Есть ли способ вызвать «отслеживать изменения» через VBA в Excel? - PullRequest
2 голосов
/ 11 января 2012

Я хочу из VBA запустить / остановить функцию «Отслеживать изменения» в Excel.

Поиск в сети Я обнаружил свойство с именем TrackRevisions объекта ActiveDocument. Предположительно в MS Word при написании ActiveDocument.TrackRevisions = True должен быть включен «Отслеживать изменения».

Но в MS Excel эта строка выдает 424 Object required ошибку во время выполнения. Та же ошибка возвращается при попытке с ThisWorkbook. Изменение его на ActiveSheet приводит к ошибке 438 Object doesn't support this property or method.

Ответы [ 3 ]

1 голос
/ 11 января 2012

Вы можете использовать следующий код.Вы увидите этот код при записи макроса.

    With ActiveWorkbook
    .HighlightChangesOptions When:=xlAllChanges
    .ListChangesOnNewSheet = False
    .HighlightChangesOnScreen = True
   End With
1 голос
/ 11 января 2012

Для общей рабочей книги вы можете использовать VBA по этим ссылкам (метод ActiveWorkbook.HighlightChangesOptions)

Этот не обеспечивает такую ​​же глубину отслеживания, как в Word , например, по первой ссылке в моем посте в Excel:

  1. Отслеживание изменений отличается от отмены и резервного копирования
  2. Некоторые типы изменений не отслеживаются. Изменения, которые вы вносите в содержимое ячейки, отслеживаются, но другие изменения, такие как изменения форматирования, не отслеживаются.
  3. История изменений сохраняется только для определенного интервала
  4. История изменений периодически удаляется

Если это не то, что вы преследовали, вы можете использовать определенный VBA для отслеживания

  1. определенные ячейки или
  2. сравнить версии

Но если это так, нам потребуется дополнительная информация о том, что вы преследуете.

0 голосов
/ 12 апреля 2016

Вопросы действительно то, что вы хотите достичь.Если вы хотите отслеживать изменения в электронной таблице, я предполагаю, что у вас есть другие пользователи, редактирующие книгу, и вы хотите записать, кто что изменил, а также просмотреть / утвердить любые изменения позже.Ну, на самом деле вам не нужны запускающие макросы для этого.

... вместо отслеживания изменений, попробуйте сравнить две книги с помощью сравнения таблиц Microsoft (приложение ограничено Excel 2013, Excel 2016, Office 365Professional).

... вместо отслеживания изменений вы можете записывать историю изменений, внесенных в книгу (кто что изменил и когда) - Управление версиями XLTools .

Я используюоба в зависимости от задачи.

...