VBA Excel Msgbox If заявление для действий - PullRequest
0 голосов
/ 27 февраля 2020

Я хочу запустить свой msgBox в действии А именно, я хотел бы удалить 2 вещи после нажатия «Да».

Я нашел здесь несколько решений:

MsgBox Да / Нет Excel VBA

Excel VBA vbYesNo MsgBox

и попытался сделать что-то работающее. Мой код выглядит так:

   Case "Remove"

        MsgBox "Do you want to remove all firestopping elements with their values?", 
        vbQuestion + vbYesNo
        If MsgBox(Question) = vbYes Then
        Sheets("hilti firestopping stores").Range("E5:E17").ClearContents
        Call ActiveShapes

        End If

...

   Sub Firestopshapes()
   Dim shp As Shape
   Dim Ws As Worksheet

   Set Ws = ActiveSheet
   For Each shp In Ws.Shapes
    If shp.Name = "Firestop" Then
        shp.Delete
    End If
  Next shp
 End Sub

Результат показан ниже:

enter image description here Я также поменял If MsgBox(Question) = vbYes Then на If ans = vbYes Then, но вместо этого я получаю сообщение об ошибке.

Можно ли каким-то образом запустить этот msgbox?

1 Ответ

3 голосов
/ 27 февраля 2020

Возможно, это яснее:

Dim ans as VbMsgBoxResult
ans = MsgBox("Do you want to remove all firestopping elements with their values?", _
    vbQuestion + vbYesNo)

If ans = vbYes Then
     ...
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...