powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / блокировать закрытие листа
2 сообщений из 27, страница 2 из 2
блокировать закрытие листа
    #36436628
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
segailDjon Player,Но при определенных условиях, форма на листе закрывается (то есть лист оголен и не защищен от закрытия крестом, вот тут в силу вступает блокировка листа).При каких именно условиях она закрывается? Под закрытием имеется ввиду, что форма вообще выгрузилась (макросы ней перестали работать и т.п.). Так-же по поводу закрытия имеется ввиду корректное программное закрытие как и задумано вами, или случаются какие-то неконтролируемые закрытия, т.е. когда вроде как она не должна была закрываться, а она закрылась.

Дам пока лишь подсказку

Создаете пустую форму.

В ней создаете два макроса
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub UserForm_Initialize()
 MsgBox "Initialize"
End Sub

Private Sub UserForm_Terminate()
 MsgBox "Terminate"
End Sub

Как-только вы запустите форму, выскочит сообщение "Initialize".
Как-только закроете форму крестиком, выскочит сообщение "Terminate".

Намёк в том, чтобы в вашей программе создать макрос UserForm_Terminate, в котором прописать код блокировки или разблокировки, в общем по ситуации.

Если что-то я недопонял, попробуйте рассказать ещё поподробнее.
...
Рейтинг: 0 / 0
блокировать закрытие листа
    #36436676
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121Так что-ли надо?
Код: plaintext
1.
2.
3.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If ActiveSheet.Name = "Расход" Then Cancel = True
End Sub
Это тоже вариант, только немного по другому:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If ActiveSheet.Name = "Расход" Then
  Cancel = True
 Else
  Cancel = False
 End If
End Sub
Вопрос лишь в том, что помешает пользователю сделать своё грязное дело, выбрать другой лист и закрыть файл. Причем так скорее всего и будет, т.к. когда он первый раз ткнёт крестик и ничего не произойдёт, он начнёт тыкать куда попало, в том числе и выбирать другие листы.
...
Рейтинг: 0 / 0
2 сообщений из 27, страница 2 из 2
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / блокировать закрытие листа
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]