• ベストアンサー

ExcelVBAについて

まだ初心者ですので、以下のことについて教えてください。 ブックの操作について Workbooks(2).Active とブック名を番号で指定する方法を利用した場合、 1.Workbooks(1)を開く 2.Workbooks(2)を開く 3.Workbooks(1)にウィンドウを切り替えて操作(入力等) 上記の操作をした後にマクロを実行すると 表示されるのは二番目に開いたWorkbooks(2)なのか、 それとも最後にウィンドウを開いたWorkbooks(1)でしょうか。 宜しくお願いいたします。

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

  • ベストアンサー
  • mar00
  • ベストアンサー率36% (158/430)
回答No.1

Workbooks(2)です。 自分もあまり詳しくはないのですが Workbooks(2).Activeではなく Workbooks(2).Activateではないでしょうか。 間違っていたらすいません。

mediacA
質問者

お礼

お礼が遅くなり申し訳ございません。 早々のご回答ありがとうございます。 Activateですね。 さっそく試してみたいとおもいます。 まだまだ初心者ですので、今後もいろいろと教えていただきたいと思いますので、宜しくお願いいたします。

その他の回答 (2)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.3

ブックを開いた順番に番号を割り振っているので、閉じない限り番号は維持されます。 >上記の操作をした後にマクロを実行すると 実行するマクロが不明なので解りません。 ブックやシートを指定しないコードなら、最後にアクティブになっているシートに対して実行されます。

mediacA
質問者

お礼

的確なご回答ありがとうございます。 ブックを「開く」と「アクティブ」になっているかを もっとしたいことを明確にしたほうがいいですね。 勉強になりました。ありがとうございます。

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

>ウィンドウを切り替えて 言葉を代えると「アクティブにして」です。 だから、「Workbooks(1)にウィンドウを切り替えて」は 「Workbooks(1)をアクティブにして」となります。 但し、「マクロを実行すると」とあります。 マクロの中でアクティブウィンドウを切り替える 可能性もあります。だから、「分からない」が答えです。 マクロの中でアクティブウィンドウを切り替えていない というのであれば、答えは分かりますよね。

mediacA
質問者

お礼

ご指摘いただきありがとうございます。 詳細が抜けてしまい、すみませんでした。 単純にファイルを開くのと アクティブウィンドウにして操作する ということは別々に考えてマクロを作成したほうがいいのですね。 試行錯誤して作成してみます。 ありがとうございました。

関連するQ&A