Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Где в код вставляется Application.DisplayAlerts? - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Где в код вставляется Application.DisplayAlerts?
light26 Дата: Воскресенье, 14.01.2018, 18:28 | Сообщение № 1
Группа: Друзья
Ранг: Старожил
Сообщений: 1354
Репутация: 91 ±
Замечаний: 0% ±

2007, 2010, 2013
Доброго времени суток.
В книге есть макрос
[vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.EnableEvents = True
Range("G9,G11,G13,G15,G17,G19,G21,G23,G27,G33,G35,G37,G39,G41,G43,G45,G47,G49,G51,G53,G55,G57").Locked = True
    Range("G59,G61,G63,G65,G67,G69,G73,G75,G77,G79,G81,G83,G85,G87,G89,G90,G92,G94,G96,G98,G100,G102,G104").Locked = True
    Range("G108,G110,G112,G114,G116,G118,G120,G122,G124,G126,G128,G130,G132,G134,G136,G138,G140,G142,G145,G147,G149,G151,G153").Locked = True
         Dim reply As Integer
    reply = MsgBox("Вы указали план на следующую неделю?", vbYesNo, "Запрос на продолжение")
      Application.DisplayAlerts = False
      If reply = vbNo Then
                 MsgBox "Укажите плановые задания на следующую неделю"
        ElseIf reply = vbYes Then Exit Sub
            End If
End Sub
[/vba]Не могу добиться отключения запроса на сохранение книги посредством Application.DisplayAlerts = False
По замыслу при нажатии "Да" после запроса "Вы указали план на следующую неделю?" файл должен закрываться с сохранением, а в противном случае возвращать пользователя на рабочий лист.
Добавил файл. Пароль 528
К сообщению приложен файл: 111.xls (94.5 Kb)


Я не волшебник. Я только учусь

Сообщение отредактировал light26 - Воскресенье, 14.01.2018, 18:37
 
Ответить
СообщениеДоброго времени суток.
В книге есть макрос
[vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.EnableEvents = True
Range("G9,G11,G13,G15,G17,G19,G21,G23,G27,G33,G35,G37,G39,G41,G43,G45,G47,G49,G51,G53,G55,G57").Locked = True
    Range("G59,G61,G63,G65,G67,G69,G73,G75,G77,G79,G81,G83,G85,G87,G89,G90,G92,G94,G96,G98,G100,G102,G104").Locked = True
    Range("G108,G110,G112,G114,G116,G118,G120,G122,G124,G126,G128,G130,G132,G134,G136,G138,G140,G142,G145,G147,G149,G151,G153").Locked = True
         Dim reply As Integer
    reply = MsgBox("Вы указали план на следующую неделю?", vbYesNo, "Запрос на продолжение")
      Application.DisplayAlerts = False
      If reply = vbNo Then
                 MsgBox "Укажите плановые задания на следующую неделю"
        ElseIf reply = vbYes Then Exit Sub
            End If
End Sub
[/vba]Не могу добиться отключения запроса на сохранение книги посредством Application.DisplayAlerts = False
По замыслу при нажатии "Да" после запроса "Вы указали план на следующую неделю?" файл должен закрываться с сохранением, а в противном случае возвращать пользователя на рабочий лист.
Добавил файл. Пароль 528

Автор - light26
Дата добавления - 14.01.2018 в 18:28
SLAVICK Дата: Воскресенье, 14.01.2018, 18:43 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Может так:
[vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.EnableEvents = True
Range("G9,G11,G13,G15,G17,G19,G21,G23,G27,G33,G35,G37,G39,G41,G43,G45,G47,G49,G51,G53,G55,G57").Locked = True
    Range("G59,G61,G63,G65,G67,G69,G73,G75,G77,G79,G81,G83,G85,G87,G89,G90,G92,G94,G96,G98,G100,G102,G104").Locked = True
    Range("G108,G110,G112,G114,G116,G118,G120,G122,G124,G126,G128,G130,G132,G134,G136,G138,G140,G142,G145,G147,G149,G151,G153").Locked = True
        Dim reply As Integer
    reply = MsgBox("Вы указали план на следующую неделю?", vbYesNo, "Запрос на продолжение")
    Application.DisplayAlerts = False
    If reply = vbNo Then
                MsgBox "Укажите плановые задания на следующую неделю"
                Cancel = True
        ElseIf reply = vbYes Then Me.Save: Exit Sub
            End If
End Sub
[/vba]


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеМожет так:
[vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.EnableEvents = True
Range("G9,G11,G13,G15,G17,G19,G21,G23,G27,G33,G35,G37,G39,G41,G43,G45,G47,G49,G51,G53,G55,G57").Locked = True
    Range("G59,G61,G63,G65,G67,G69,G73,G75,G77,G79,G81,G83,G85,G87,G89,G90,G92,G94,G96,G98,G100,G102,G104").Locked = True
    Range("G108,G110,G112,G114,G116,G118,G120,G122,G124,G126,G128,G130,G132,G134,G136,G138,G140,G142,G145,G147,G149,G151,G153").Locked = True
        Dim reply As Integer
    reply = MsgBox("Вы указали план на следующую неделю?", vbYesNo, "Запрос на продолжение")
    Application.DisplayAlerts = False
    If reply = vbNo Then
                MsgBox "Укажите плановые задания на следующую неделю"
                Cancel = True
        ElseIf reply = vbYes Then Me.Save: Exit Sub
            End If
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 14.01.2018 в 18:43
bmv98rus Дата: Воскресенье, 14.01.2018, 18:53 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4149
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
light26, просто добавьте Me.Save а Application.DisplayAlerts = False , да и exit sub не нужно мне кажется, а вот Сancel = true на пользу пойдет :-)

[vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.EnableEvents = True
Range("G9,G11,G13,G15,G17,G19,G21,G23,G27,G33,G35,G37,G39,G41,G43,G45,G47,G49,G51,G53,G55,G57").Locked = True
    Range("G59,G61,G63,G65,G67,G69,G73,G75,G77,G79,G81,G83,G85,G87,G89,G90,G92,G94,G96,G98,G100,G102,G104").Locked = True
    Range("G108,G110,G112,G114,G116,G118,G120,G122,G124,G126,G128,G130,G132,G134,G136,G138,G140,G142,G145,G147,G149,G151,G153").Locked = True
      
    Dim reply As Integer
    reply = MsgBox("Вы указали план на следующую неделю?", vbYesNo, "Запрос на продолжение")
      'Application.DisplayAlerts = False ' отключение вопросов
      If reply = vbNo Then
                 MsgBox "Укажите плановые задания на следующую неделю"
                Cancel = True
        ElseIf reply = vbYes Then Me.Save

        End If
End Sub
[/vba]


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Воскресенье, 14.01.2018, 19:02
 
Ответить
Сообщениеlight26, просто добавьте Me.Save а Application.DisplayAlerts = False , да и exit sub не нужно мне кажется, а вот Сancel = true на пользу пойдет :-)

[vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.EnableEvents = True
Range("G9,G11,G13,G15,G17,G19,G21,G23,G27,G33,G35,G37,G39,G41,G43,G45,G47,G49,G51,G53,G55,G57").Locked = True
    Range("G59,G61,G63,G65,G67,G69,G73,G75,G77,G79,G81,G83,G85,G87,G89,G90,G92,G94,G96,G98,G100,G102,G104").Locked = True
    Range("G108,G110,G112,G114,G116,G118,G120,G122,G124,G126,G128,G130,G132,G134,G136,G138,G140,G142,G145,G147,G149,G151,G153").Locked = True
      
    Dim reply As Integer
    reply = MsgBox("Вы указали план на следующую неделю?", vbYesNo, "Запрос на продолжение")
      'Application.DisplayAlerts = False ' отключение вопросов
      If reply = vbNo Then
                 MsgBox "Укажите плановые задания на следующую неделю"
                Cancel = True
        ElseIf reply = vbYes Then Me.Save

        End If
End Sub
[/vba]

Автор - bmv98rus
Дата добавления - 14.01.2018 в 18:53
light26 Дата: Воскресенье, 14.01.2018, 19:01 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1354
Репутация: 91 ±
Замечаний: 0% ±

2007, 2010, 2013
SLAVICK, Спасибо за код

просто добавьте Me.Save b Application.DisplayAlerts = False не нужно мне кажется
Да, работает в обоих вариантах. Спасибо. Но почему Application.DisplayAlerts = False не работал?


Я не волшебник. Я только учусь
 
Ответить
СообщениеSLAVICK, Спасибо за код

просто добавьте Me.Save b Application.DisplayAlerts = False не нужно мне кажется
Да, работает в обоих вариантах. Спасибо. Но почему Application.DisplayAlerts = False не работал?

Автор - light26
Дата добавления - 14.01.2018 в 19:01
SLAVICK Дата: Воскресенье, 14.01.2018, 19:31 | Сообщение № 5
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
ессли честно не помню(когда-то искал ответ) - помоему потому что это не стандартный алерт. Тут три варианта ответа.
Да и если бы он сработал - то Вы бы не получили тот результат, который хотели книга закрывалась бы с сохранением.


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщениеессли честно не помню(когда-то искал ответ) - помоему потому что это не стандартный алерт. Тут три варианта ответа.
Да и если бы он сработал - то Вы бы не получили тот результат, который хотели книга закрывалась бы с сохранением.

Автор - SLAVICK
Дата добавления - 14.01.2018 в 19:31
bmv98rus Дата: Воскресенье, 14.01.2018, 20:59 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4149
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщениеhttps://msdn.microsoft.com/ru-ru....y-excel

Автор - bmv98rus
Дата добавления - 14.01.2018 в 20:59
light26 Дата: Понедельник, 15.01.2018, 00:09 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1354
Репутация: 91 ±
Замечаний: 0% ±

2007, 2010, 2013
SLAVICK, усвоил
bmv98rus, да пытался я туда сунуться. Только не понимаю ничего по-английски. А перевод корявый. Но все равно спасибо


Я не волшебник. Я только учусь
 
Ответить
СообщениеSLAVICK, усвоил
bmv98rus, да пытался я туда сунуться. Только не понимаю ничего по-английски. А перевод корявый. Но все равно спасибо

Автор - light26
Дата добавления - 15.01.2018 в 00:09
bmv98rus Дата: Понедельник, 15.01.2018, 07:14 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4149
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
Да, переводы там не литературные, это точно, но стали уже понимаемыми, конечно если в теме хоть немного и таких ляпов, которые мешают пониманию, меньше становится.


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
СообщениеДа, переводы там не литературные, это точно, но стали уже понимаемыми, конечно если в теме хоть немного и таких ляпов, которые мешают пониманию, меньше становится.

Автор - bmv98rus
Дата добавления - 15.01.2018 в 07:14
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2026 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!