Новости:

Из правил форума: Тема должна отражать суть вопроса, топики типа "help please" будут удаляться!

Главное меню

Работа в файле при открытом MsgBox

Автор Екатерина Максимова, 27.09.2016, 15:46

« назад - далее »

Екатерина Максимова

Суть задумки такова: MsgBox приостанавливает работу макроса для того, чтобы можно было заполнить в руки некоторые ячейки. После заполнения необходимых данных нажимаем "Да" и макрос продолжает работать. Но сейчас при выскакивании окна MsgBox никакие действия с файлом совершить не могу пока не закрою окно и соответственно остановлю макрос. Есть ли какой-нибудь код для того чтобы MsgBox не мешал вносить данные в файл.

Сейчас код выглядит так:
If MsgBox("Продолжить?", vbYesNo, "Confirm") = vbYes Then
    MsgBox ("ok, i will do")   ' дальше код для продолжения макроса
Else
    MsgBox ("I will sleep")  ' это если не нужно продолжение макроса
End If

End Sub

vikttur

#1
MsgBox - сообщение, после которого код продолжает работу.
Для ввода данных используйте форму пользователя или InputBox
If MsgBox("Продолжить?", vbYesNo, "Confirm") = vbYes Then
    sStr = InputBox("Введите число", "ВЫБОР")
    MsgBox Val(sStr) ' дальше код для продолжения макроса
Else
    Exit Sub  ' это если не нужно продолжение макроса
End If

Екатерина Максимова

При этом коде тоже самое...мне надо, чтобы когда выскочило окно, я отодвинула его в сторону, заполнила необходимые ячейки в файле, нажал Ок и макрос продолжился бы.

vikttur

Это то же самое, что два макроса: один до заполнения ячеек, другой - после. Какой смысл делать прерывание?