[[20040913173932]] 『Bブックを保存しますかって聞いてくるんです』(さかちゃん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『Bブックを保存しますかって聞いてくるんです』(さかちゃん)

[こんにちは]

 マクロの質問ですけど、
 Aというブックを開いていて、Bというブックを開いてBブックでオートフィルタをかけたものをAブックにコピーしてBブックを閉じるというマクロを作成したんですけど、マクロを実行すると、Bブックを保存しますか?って途中で聞いてくるんですけど、これをなくすためにはどうしたらいいですか?


 Application.DisplayAlerts = False 最初に入れる

 Application.DisplayAlerts = True 最後に入れる  でしょうか。

 (川野鮎太郎)


 参考に・・・
 Sub aa()
     Dim aa As Workbook
     Set aa = Excel.Workbooks.Add
     MsgBox ("kesuyo")
     aa.Close xlDoNotSaveChanges
 End Sub
 クローズの後にxlDoNotSaveChangesをつけるとアラーとは出なくなります。
(Null)


 保存する、しないが決まっていれば、CloseメソッドのSaveChanges引数を
指定します。Trueで保存終了、Falseで保存せずに終了
 Sub BookClose()
 Rem test_20040913
     Workbooks("B.xls").Close SaveChanges:=True
 End Sub
 
DisplayAlertsは、便利ですが「最初から最後まで」は危険もあるので、
避けるべきでは?(予測していない警告メッセージも表示しなくなる)
もし使うのであれば
私は確実にメッセージが予測できる部分でだけ(つまりCloseの前後でだけ)
使用したほうが良いと思います。
(KAMIYA)


ありがとうございました。
出来ました。
(さかちゃん)


 ごめんなさい。確かにKAMIYAさんのおっしゃるとおりですね。
 (川野鮎太郎)

 シートの削除なんかはDisplayAlerts 使わないとどうしようもないですけどね。
処理全体がわからないので、全体に網かけてしまうのは、
ちょっと危ないかな? ということで敢えてコメント入れました。
(KAMIYA)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.