• ベストアンサー

たびたびすみません。教えてください。

マクロです。 AのBookでマクロを使いBのBookを開きました。そのBのBookを編集してCという名前をつけてBookを保存しました。 BのBook名はCに変わりBのBookは閉じられました。 そこで質問なのですが、AのBookからCのBookを閉じる命令文を教えてください。 AのBookは閉じません。 よろしくお願いします。

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

  • ベストアンサー
  • Asahi2001
  • ベストアンサー率54% (6/11)
回答No.3

自分以外のすべてのブックを閉じるなら、 Sub test() Dim Wbk As Workbook For Each Wbk In Workbooks  If ThisWorkbook.Name <> Wbk.Name Then Wbk.Close Next End Sub こんな感じになります。

jul7_30
質問者

お礼

できました。 ありがとうございます。 私の説明が悪いせいで他の回答者の皆さんにもご苦労をかけてしまいました。

その他の回答 (3)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.4

>Book.Aからbook.Bを呼び出し編集後、田中という名前で保存します。 >すでにBOOk.Bは閉じられていて田中というブックが開いています。 >その田中というBookをBook.Aから閉じる方法を教えてください。 先ほど、紹介したサイトにありますよ 'ワークブック"Book1.xls"をファイル名"Book2.xls"に変更して閉じる Sub CloseWorkbook() Workbooks("Book1").Close SaveChanges:=True, _ Filename := "Book2" End Sub Sub CloseWorkbook() Workbooks("B").Close SaveChanges:=True,Filename := "田中" End Sub とでも編集すれば、Bを田中とい名前で保存して閉じる という意味です。

jul7_30
質問者

お礼

何度も回答していただき大変感謝をしております。 お教えいただいたサイトを活用していきたいと思います。 本当にありがとうございました。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

一度、以下のサイトなど目を通してみてください。 http://excelvba.pc-users.net/fol4/4_3.html Sub CloseWorkbook() Workbooks("BookC").Close End Sub  となるかと思います。

jul7_30
質問者

補足

回答ありがとうございました。 Book.Aからbook.Bを呼び出し編集後、田中という名前で保存します。 すでにBOOk.Bは閉じられていて田中というブックが開いています。 その田中というBookをBook.Aから閉じる方法を教えてください。 私の説明が悪くて申し訳ありません。

  • masatsan
  • ベストアンサー率15% (179/1159)
回答No.1

その操作をマクロで記録すればわかりますよ。

jul7_30
質問者

補足

早速の回答ありがとうございました。 お教えいただいた方法ですとBをCに変えた時には良いのですが、BをDに変えてマクロを実行すると名前が違うのでエラーがでてしまいます。 Windows("〇〇〇.xlsm").Activate 〇〇〇の部分が其の都度違っても閉じる方法を教えてください。

関連するQ&A