Отслеживание действий в нескольких файлах Excel - PullRequest
0 голосов
/ 19 марта 2020

Я отвечаю за 10 файлов Excel в общей папке. И мне очень любопытно, кто просматривает мои файлы, на какие именно листы они смотрят и в какие сроки. Есть ли возможность отследить эту деятельность, пожалуйста? Я просто думаю о том, что можно было бы создать один дополнительный файл с кодом VBA, связанный со всеми этими 10 файлами Excel, и каким-то образом извлечь данные. Однако я не знаю с чего начать.

Спасибо.

1 Ответ

1 голос
/ 19 марта 2020

Вы можете использовать следующий код для всех 10 файлов Excel. Всякий раз, когда открывается какой-либо файл, исполняется следующий код и записывает данные в файл монитора.

Private Sub Workbook_Open()
Dim LR As Long
    With Sheets("Sheet1")
        file_name = ThisWorkbook.FullName
        open_time = Time
        user_name = Environ("UserName")
    End With
    Set targetwb = Workbooks.Open("D:\Test.xlsx")
    targetwb.Sheets("Sheet1").Cells(1, "A").Value = open_time 
    targetwb.Sheets("Sheet1").Cells(2, "A").Value = user_name
    targetwb.Sheets("Sheet1").Cells(3, "A").Value = file_name
    targetwb.Save
    targetwb.Close
End Sub

Вы можете получить last row number файла монитора и затем добавить новые данные. В целях безопасности вы можете добавить password protection в макрос для каждого файла, чтобы никто не смог изменить ваш код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...