こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルVBAについて

今、エクセルVBAでマクロの作成を行っています

マクロの中で、作業用に別なエクセルとシートを作成したのですが
マクロの最後でその作業用のエクセルとシートを削除する用にしました。

その際に、エクセルがメッセージボックスが開き
『このエクセルブックを閉じますか』や『このシートを削除してよろしいですか』などと聞いてきます。
このボックスを出さないように強制的に消すことは出来ないのでしょうか?
出来るのであれば、やり方を教えてください。

投稿日時 - 2002-11-22 23:03:40

QNo.411160

暇なときに回答ください

質問者が選んだベストアンサー

初めまして。サンプルマクロを組んでみました。参考にしてみて下さい。

Sub Test
Application.DisplayAlerts = False
workbooks("作業用に用意したブック名.xls").close SaveChanges:=FAlse
workbooks("削除したいシートがあるブック名.xls").worksheets("削除したいシート名").delete
Application.DisplayAlerts = True

End Sub

これで、メッセージを出さずにブックも保存せず終了できますし、シートも削除されると思います。お試しになってみて下さい。

もし、何かございましたらご遠慮なく補足要求をして下さい。

投稿日時 - 2002-11-23 00:05:10

お礼

いえ、十分ですありがとうございます
なぞが解けました^^

投稿日時 - 2002-11-25 13:05:37

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.3

シートの削除については、No.1の方のやり方で良いようです。

ヘルプより

次の使用例は、確認のダイアログ ボックスを表示しないで、作業中のブックのシート 3 を削除します。

Application.DisplayAlerts = False
Worksheets("Sheet3").Delete
Application.DisplayAlerts = True

投稿日時 - 2002-11-23 00:01:59

お礼

ありがとうございます
そういうことだったんですね^^

投稿日時 - 2002-11-25 13:00:39

ANo.2

Closeメソッドで、SaveChanges = Trueにすれば良いのでは。

新規ブックを開いて、適当に書き込みしたあと、閉じる例

Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2002/11/22 ユーザー名 :
'

'
Workbooks.Add
ActiveCell.FormulaR1C1 = "aaa"
ActiveWindow.Close (SaveChanges = True)

End Sub

投稿日時 - 2002-11-22 23:18:30

お礼

ありがとうございます^^
エクセルブックを閉じることはできました
あとは、シートの削除なんですが・・・
なにかありませんかね^^

投稿日時 - 2002-11-22 23:37:31

ANo.1

こんにちは。

Application.DisplayAlerts = False

'処理

Application.DisplayAlerts = True

のようにします。
処理が終わったら必ずTrueに戻しましょう。

投稿日時 - 2002-11-22 23:17:55

お礼

回答ありがとうございます^^

投稿日時 - 2002-11-22 23:38:10

あなたにオススメの質問