Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10161 / 13646 ツリー ←次へ | 前へ→

【23386】教えてください 教えてください 05/3/20(日) 19:34 質問[未読]
【23387】Re:教えてください ponpon 05/3/20(日) 20:12 回答[未読]
【23388】Re:教えてください 教えてください 05/3/20(日) 20:34 お礼[未読]
【23389】Re:教えてください ponpon 05/3/20(日) 20:56 回答[未読]
【23390】Re:教えてください 教えてください 05/3/20(日) 21:55 お礼[未読]
【23391】Re:教えてください 教えてください 05/3/20(日) 23:35 お礼[未読]

【23386】教えてください
質問  教えてください  - 05/3/20(日) 19:34 -

引用なし
パスワード
   ブックを開いた時に別のブックを同時に開くことはできるのですが、
ブックを閉じる時に別のブックを同時に閉じることはできますか?
できるならコードはどうしたら良いのでしょうか?
どなたか教えてください。

【23387】Re:教えてください
回答  ponpon  - 05/3/20(日) 20:12 -

引用なし
パスワード
   ▼教えてください さん:

ponponです。こんばんは。
>ブックを閉じる時に別のブックを同時に閉じることはできますか?
>できるならコードはどうしたら良いのでしょうか?

こういうことでしょうか?

ThisWorkbookモジュールに

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Dim Wb As Workbook
  For Each Wb In Workbooks
    Wb.Save '保存して
    Wb.Close '閉じる
  Next
  Application.Quit 'エクセルの終了
End Sub

【23388】Re:教えてください
お礼  教えてください  - 05/3/20(日) 20:34 -

引用なし
パスワード
   ▼ponpon さん:
> こんばんは、
試してみました。ありがとうございます。
でも、少し説明が足らなかったようでごめんなさい。

>ThisWorkbookモジュールに
>
>Private Sub Workbook_BeforeClose(Cancel As Boolean)
>  Dim Wb As Workbook
>  For Each Wb In Workbooks
>    Wb.Save '保存して
>    Wb.Close '閉じる
>  Next
>  Application.Quit 'エクセルの終了
     ↑ ↑ ↑ ↑ ↑ ↑ ↑
   ここでエクセルを終了させたくないのですが、
   どうしたら良いのですか?
>End Sub
できれば、保存終了を聞かずに終了させたいのですが。
宜しくお願いします。

【23389】Re:教えてください
回答  ponpon  - 05/3/20(日) 20:56 -

引用なし
パスワード
   ponponです。これでは、どうでしょう。
後は、Closeをヘルプで調べてください。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Dim Wb As Workbook
  For Each Wb In Workbooks
    Wb.Close SaveChanges:=True '変更を保存
  Next
End Sub

【23390】Re:教えてください
お礼  教えてください  - 05/3/20(日) 21:55 -

引用なし
パスワード
   ▼ponpon さん:
ponponさん、
色々有難うございました。
がんばってみます。

【23391】Re:教えてください
お礼  教えてください  - 05/3/20(日) 23:35 -

引用なし
パスワード
   >ponponさん。有難うございます。
何とかできました。
Closeをヘルプで調べてやってみました。
少し難しく考え過ぎていたようです。

 Private Sub cdcancel_Click()
 Workbooks("○○○.XLS").Close SaveChanges:=True
 ThisWorkbook.Close (SaveChanges = False)
 End Sub

これで2つのブックだけが順番に閉じていきました。
色々と親切に教えて頂き、ありがとうございました。

10161 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free