Проблема с MsgBox по условию с кнопками Да Нет - VB

Узнай цену своей работы

Формулировка задачи:

Здравствуйте
Помогите с макросом, пожалуйста.
Имеется накладная, в ней есть две ячейки (C21 , C22), в которых указывается курс доллара и скидка.
Условие:
Если ячейки заполненные, то при запуске макроса ничего не происходит.
Если какая-то ячейка пустая, то выскакивает MsgBox "Хотите указать курс и скидку?"
При клике на кнопку ДА выходим из макроса, если жмем НЕТ - макрос работает дальше.
В данном случае выскакивает OK.
Подскажите, что неправильно сделал.
Пример в файле.
Спасибо.
Sub Add_discount()
Set ws = ActiveSheet
'получение последней строки в столбце 5
lLastRow = ws.Cells(Rows.Count, 5).End(xlUp).Row
'указываем ячейку C21, с текстом курс (диапазон динамический)
If Cells(lLastRow, 5).Offset(2, -2).Value = 0 Then
MsgBox "Хотите указать курс доллара и скидку?", vbYesNo
End If
'указываем ячейку C22, с текстом скидка
If Cells(lLastRow, 5).Offset(3, -2).Value = 0 Then
MsgBox "Хотите указать курс доллара и скидку?", vbYesNo
End If
Dim answer As Integer
answer = MsgBox("Хотите указать курс доллара и скидку?", vbYesNo)
If answer = vbYes Then
Exit Sub
Else: MsgBox "OK"
End If
End Sub

Решение задачи: «Проблема с MsgBox по условию с кнопками Да Нет»

textual
Листинг программы
If Cells(lLastRow, 5).Offset(2, -2).Value = 0 
  If vbYes = MsgBox("Хотите указать курс доллара?", vbYesNo) Then
    Cells(lLastRow, 5).Offset(2, -2).Value = Round(CDbl(InputBox("И почём же нынче доллар?")), 2)
  End If
End IF

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы