こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

excel VBA マクロ 他のブックの指定方法

こんにちは、
excelのVBAにて、Abookのマクロを他のbookへ書き込み(実行)をしたいのですが、
以下2パターンにおいて、どのように指定をしたらよいか教えてください。

1:"A"bookと書き込み(実行)したいファイルの"○×△見積"bookの2ファイルのみを開いている状態において
Abookから、
Windows("○×△見積.xlsx").Activate
とファイル名指定をせずに、ThisWorkbook以外という指定方法を知りたいです。

2:"A"bookと書き込み(実行)したいファイルの"○×△見積"bookの他に複数のファイルが開いている際に、
Abookから、”見積”の名前がつくファイルを見つけて書き込み(実行)する方法を知りたいです。

どうぞ宜しくお願いいたします。

投稿日時 - 2011-05-21 13:02:23

QNo.6752754

暇なときに回答ください

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

dim w as workbook
for each w in workbooks
 if w.name <> thisworkbook.name and not w.name like "PERSONAL.*" then
 msgbox w.name 'その他のブックを取得

 if w.name like "*見積*" then
  msgbox w.name '見積りブックを取得
 end if
 end if
next

投稿日時 - 2011-05-21 13:17:40

お礼

ありがとうございました、できました!

投稿日時 - 2011-05-29 15:22:00

ANo.1

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

あー,言わずもがなと思いましたが念のため。
先の回答は,目的の「他のブック」のブック名を調べてどうこうする,という回答をしたワケではありませんよ。(たまにですがそういう勘違いをされる方がいらっしゃったのを思い出しました)


その他のブックを取得の例:
dim w as workbook
for each w in workbooks
 if w.name <> thisworkbook.name and not w.name like "PERSONAL.*" then
  w.workhseets(1).range("A1") = "hello" '又は必要に応じてシート名を指定し操作する
 end if
next

投稿日時 - 2011-05-21 16:42:28

あなたにオススメの質問