• ベストアンサー

Activeブック以外の開いているブックを閉じたい

複数のbookが開いている状態で、 Activebook以外のworkbookを閉じたいです。 book名、book数は一定ではありません。 こんなことをしてみたのですが動かないです。 何かよい方法はないでしょうか。 Dim hbook As Object 名前 = ActiveWorkbook.Name For Each hbook In Workbooks If hbook.Name <> 名前 Then Workbooks(hbook & ".xls").Close ' False End If Next

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 Workbooks(hbook & ".xls").Close ↓ hbook.Close では?

tonjiru
質問者

お礼

有難うございます。 記述がおかしかったですね。 助かりました。

その他の回答 (1)

  • taocat
  • ベストアンサー率61% (191/310)
回答No.2

こんにちは。 一般的には、maruru01さんの方法ですが、 どうしてもWorkbooksを使いたければ Workbooks(hbook & ".xls").Close を Workbooks(hbook.Name).Close にする   以上です。

tonjiru
質問者

お礼

有難うございます。 何故かまどろっこしい書き方をしてました。 下記で動きました。 Dim hbook As Worksheet For Each hbook In Workbooks If hbook.Name <> ActiveWorkbook.Name Then hbook.Close End If Next

関連するQ&A

専門家に質問してみよう