- ベストアンサー
エクセルのマクロでワークブックの保存しないでの閉じ方を教えてください。
エクセルのマクロでワークブックの保存しないでの閉じ方を教えてください。 閉じるファイルのファイル名を変数で指定したいのですが、どのようにすればよいのでしょうか。 教えてください。よろしくお願いいたします。 このように書いてみたのですが、うまくいきません。 AAA=ファイル名 Workbook(AAA).Close
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>閉じるファイルのファイル名を変数で指定したいのですが、どのようにすればよいのでしょうか。 につきましては、 http://okwave.jp/qa5445099.html の方をご覧ください。 >ワークブックの保存しないでの閉じ方 につきましては、VBE プロジェクト エクスプローラ から当該ブックの ThisWorkbook をダブルクリックし、(General) と書かれた窓から「Workbook」を、(Declarations) と書かれた窓から「BeforeClose」を選択してください。 この時点で、現われるコードの間に close と書いて、[F1] キーを押下してください。 [Close メソッド] のヘルプが現われ、[使用例] の最初に、 >次の使用例は、Book1.xls のブックを閉じます。内容の変更は保存しません。 と書かれていますが、これを利用します。 ということで、 Private Sub Workbook_BeforeClose(Cancel As Boolean) ThisWorkbook.Close SaveChanges:=False End Sub となりますが、ここで一端保存してください。 後は、このブックに変更を加えても、ファイルを閉じようとしたときに、保存せずに消えてしまいます。
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
Googleで「保存しないで閉じる vba」で照会すれば沢山記事が出る。 警告がうるさいのでしょうが、それを避けるには ActiveWorkbook.Close SaveChanges:=False ーー ブック名が変数でもそれをWorkbooks指定の()内に入れて旨く行きませんか。 Sub test06() b = "2.xls" Workbooks(b).Close SaveChanges:=False End Sub はうまく行くようだが Activebookとか使えませんか。 ーーー エクセルのブックを開くのに2つの状態があるが、新しいウインドウで開く、でないとして。
お礼
ご回答ありがとうございました。 ファイル名の指定の仕方が悪かったのか、うまくいきませんでした。 もう少し考えてみます。
No.1です。次の方法でどうでしょうか。 Workbooks(AAA).Close SaveChanges:=False
お礼
ご回答ありがとうございました。
次の方法を試してください。 Workbooks("BOOK1.XLS").Close SaveChanges:=False
お礼
早速の回答ありがとうございます。 確かにこの方法でもファイルを閉じることはできるのですが、ファイル名が変数の場合にはどうすればよいのでしょうか?変数の場合どうしたらよいか知りたいのですが、どのように書いたらよいでしょうか? 教えてください。
お礼
ご回答ありがとうございました。 全く思ってもみなかった方法なので、試してみます。