Я долго искал, но, похоже, у меня ничего не работает. Я пытаюсь запустить Public Sub из файла Personal.xlsb , который добавляет метку времени, когда ячейка изменяется на ячейку в той же строке изменения. Этот Public Sub должен быть вызван Private Sub Worksheet_Change(ByVal Target As Range)
в Sheet Project изменения.
Я сейчас пытаюсь Application.Run("'PERSONAL.XLSB'!CaptureTime",Target)
, но VBA не распознает код. Я также попробовал Call
в нескольких формах и некоторых других вещах.
Причина, по которой я не хочу создавать модуль в том же Листовом проекте , заключается в том, что у меня большая часть кода защищена в Персональном файле. Один из макросов в файле Personal создает отчет для моей компании, а также добавляет код VBA в новый лист отчета, чтобы взять отметку времени, и защищает большинство ячеек в нем (чтобы избежать манипулирования данными ). Я хочу переместить этот код из Sheet Project в мой Personal файл и просто вызывать этот код штампа времени каждый раз, когда происходит изменение в листе. Таким образом, никто не мог видеть пароль на листах при доступе к VBA.