Страница: 1 |
|
Вопрос: Флажок на форме
|
Добавлено: 09.11.07 15:39
|
|
Автор вопроса: Инара
|
Здравствуйте, уважаемые!
У меня бесхитростный, но неразрешимый вопросец.
В общем в VBA excel есть форма, навроде окна приветствия, которая запускаться автоматом при открытии книги. Код, соответственно прописан в книге при активации:
Userform1.show. На самой форме к тому же есть флажок "Больше не показывать это окно". Вот и не знаю, как описать этот флажок, чтобы он запомнил галочку, и форма в дальнейшем не появлялась.
Помогите, люди добрые чайнику. Ошчень надо.
Ответить
|
Номер ответа: 1 Автор ответа: Pavel
Вопросов: 0 Ответов: 82
|
Профиль | | #1
|
Добавлено: 09.11.07 15:51
|
если поставлили значок, то в какой-нибудь ячейке, на каком-нибудь листе (можно дажен на скрытом листе) написать что-нибудь, например 1 (или 0) или True (или False), ну, и соответственно, при открытии формы проверять текст в этой ячейке, и если, например, там 0, то не показывать эту форму
Ответить
|
Номер ответа: 2 Автор ответа: Nytrogen
Вопросов: 18 Ответов: 186
|
Профиль | | #2
|
Добавлено: 09.11.07 17:48
|
Хочу добавить, что если данная книга предназначена для эксплуатации на разных компьютерах, то рациональнее было бы сохранять значение переменной показыватьФормуПриветсвия не на системном листе, а в системном реестре:
'код макроса, вызывающего UserForm_Initialize
'имя раздела системного реестра
Const APPNAME = "My Book"
'показать форму приветствия?
Dim showWelcomeForm As Boolean
'читаем значение этой переменной из записи "Welcome Form" секции APPNAME;
'если таковой записи ещё не существует (книга открывается впервые данным пользователем), то получаем True
showWelcomeForm = VBA.GetSetting(APPNAME, "Welcome Form", "Show", True)
Далее просто показываем форму, если showWelcomeForm = True.
А при закрытии формы сохраняем в реестре выбранное пользователем значение:
'код процедуры OK_Click
'сохраняем значение записи "Show", соответствующее значению checkBox'а DontShowAgain
VBA.SaveSetting APPNAME, "Welcome Form", "Show", Not DontShowAgain.Value
Системный реестр запускается Run'ом: REGEDIT
Сохраняемые записи находятся в директории
HKEY_CURRENT_USER/Software/VB and VBA Program Settings
Ответить
|
Страница: 1 |
Поиск по форуму