VBA初心者です。
素人質問ですが、どうぞよろしくお願いいたします。
BOOK1のSheet1にwebクエリが設定されています。
Sheet1にはコマンドボタンが二つあり、
CommandButtun1にはクエリを更新するマクロ。
CommandButtun2にはクエリを更新してブックを閉じるマクロがあります。
コマンドボタン2をクリックすると、Webクエリを更新して、
ブックをメッセージなしで上書き保存したいのですが、
下記のマクロではうまく動作しません。
クエリ更新のあとの、ブック保存、クローズするマクロが動作しない状況です。
CommandButtun1のWSH.Popupが原因のようですが、
何か回避方法がありましたら、ご教授いただけませんか?
CommandButtun1には下記のマクロ
Private Sub CommandButton1_Click()
'独自のエラーメッセージを表示する(On Errorステートメント)
On Error GoTo Err_Msg
'webクエリ更新
Range("H6").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
中略
Exit Sub
'エラーメッセージの指定
Err_Msg:
Dim WSH As Object
Set WSH = CreateObject("Wscript.Shell")
WSH.Popup "完了しました。", 3, "自動的に閉じます", vbYesNo + vbInformation
Set WSH = Nothing
End
End Sub
-------------------------------------------------------------------------
CommandButtun2には下記のマクロ
Private Sub CommandButton2_Click()
CommandButton1.Value = True
If ThisWorkbook.Saved = False Then
ThisWorkbook.Save
End If
ActiveWorkbook.Close
End Sub
お礼
ありがとうございます。 現象ですが、 "1.コマンドボタン2をクリックする 2.コマンドボタン1のWEBクエリ更新が実行される 3.エラーが発生して「自動的に閉じます」が表示される 4.コマンドボタン2に復帰して保存するつもりがされない" 3.の部分のエラーはありません。 クエリ更新のあと”完了しました”のポップアップ表示後、 EXCELに戻り、次のプログラムには移行しません。 End はクエリ更新処理を繰り返し行っているため、 削除はできない状態です。 プログラムの改修を試みたいと思います。