У меня есть большой файл Excel с несколькими листами и модулями. В коде для каждого из них мне нужно временно защищать или защищать защищенный паролем лист, чтобы обновить некоторые защищенные части.Объявить глобальную переменную для пароля листа
До сих пор я использую одну из следующих строк, которая работает, но это означает, что пароль появляется несколько раз по всему коду. Есть ли способ, которым я могу объявить этот пароль только один раз, как глобальную переменную, а затем просто ссылаться на эту переменную, когда это необходимо, чтобы ее нужно было изменить только один раз, если это необходимо для изменения? Кроме того, это уменьшит безопасность файла?
Текущий код:
Чтобы защитить лист:
ActiveSheet.Protect Password:="MyPassword", UserInterfaceOnly:=True
Чтобы снять защиту листа:
ActiveSheet.Unprotect Password:="MyPassword"
Если безопасность представляет собой серьезную проблему, обратите внимание, что excel, вероятно, не является правильным выбором. Пароль, хранящийся в виде строки VBA, легко извлекается у кого-то, кто знает [как взломать пароль проекта VBA] (http://stackoverflow.com/questions/1026483/is-there-a-way-to-crack -The-пароль-на-ан-первенствовать-Vba-проекта). – Ioannis