• 締切済み

ExcelのVBで、別のExcelファイルを開いてactiveにするには

ExcelのVBについての質問です。 「A.xlsのフォームでパラメータを入力し、その結果に応じて 別のExcelファイル(例えばB1.xls)を自動的に開く。 ユーザーは、B1.xlsに何か入力した後、B1.xlsを保存 終了する。 最初に戻って再びA.xlsのフォームに入力し... を繰り返す」 という作業を行いたいのです。 A.xlsでユーザーフォームをactiveにしたままだと、 B1.xlsを呼び出したときに、A.xlsのフォームがactiveで B1.xlsへ入力できません。(B1.xlsをActiveにしても A.xlsのユーザーフォームの方が優先されます) かと言って、A.xlsのフォームをhideしてから B1.xlsを呼び出すと、再びactiveにする際 B1.xlsを保存終了したことをA.xls側から検出する 必要があるのですが、この方法がわかりません。 何かよい方法はないでしょうか

みんなの回答

  • deecyan
  • ベストアンサー率38% (89/233)
回答No.3

一番簡単なのは B1.xlsを開いたときに MSGBOXをだして B1.xlsの入力が終わって保存終了したら OKボタンを押してもらうのが簡単です

ygoo
質問者

お礼

ありがとうございました。 しかし、この方法ですと、 No.2さんの方法がわからなかったために、 MSGBOXからB1.xlsへフォーカスが 移らなかったのです。

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

vbModeless です。 UserFormの表示方法 ​http://hinekure.vba-soft.com/?eid=255803

ygoo
質問者

お礼

ありがとうございます。 ご指摘の方法でうまくいきました。

noname#42268
noname#42268
回答No.1

関連するQ&A