Это было бы потому, что вы не возвращали значение вашего msgbox в переменную.
В этом случае я бы предпочел не использовать переменную, а просто простое выражение Select Case
:
Select Case MsgBox(Prompt:="Close document?", Buttons:=vbYesNo)
Case vbYes
Application.ActiveDocument.Close SaveChanges:=wdPromptToSaveChanges
Case vbNo
'Keep the document open
End Select
Но я заметил еще одну проблему, вы объявили docX
как тип documents , вы, вероятно, хотели использовать Dim docX As Document
(нет s
).А потом я также заметил, что вы даже не использовали переменную.
См. Также следующее, чтобы исправить эти проблемы:
Sub b()
Dim docX As Document
Set docX = Application.Documents.Open( _
Filename:="C:\Users\johnr\OneDrive\Documents\CIS 208 VBA\Rimando_Input_Box.docm")
Select Case MsgBox(Prompt:="Close document?", Buttons:=vbYesNo)
Case vbYes
docX.Close SaveChanges:=wdPromptToSaveChanges
Case vbNo
'Keep the document open
End If
End Sub