|
はじめまして さるです。
ユーザフォームで作ったメニュー画面があり(ファイルA)、
その画面上に作ったボタンを押すと計算処理等を行う別のExcelファイル(ファイルB)を開くようにしています。
ファイルBを閉じると、ファイルAのユーザフォームを表示させてファイルBは閉じるようにしたいのですが、
ファイルBが開いたままになっていて困っています。
やりたい事は
1.ファイルAを開くと同時にユーザフォームが開く。
2.開いているファイルは常に1ファイルだけ。
の2点です。
プログラムはこのようにしています。
<ファイルA>
・ThisWorkBook
Private Sub Workbook_Open()
userForm1.show
End Sub
として、起動時にユーザフォームを開くようにしています。
ユーザフォームのボタンを押した際は
Private Sub cmdボタンクリック_Click()
Workbooks.Open ("ファイルB.xls")
Unload frmMenu
ThisWorkbook.Close savechanges:=False
End Sub
として、ファイルBを開いてファイルAは閉じるようにしています。
<ファイルB>
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Workbooks.Open ("ファイルA.xls")
End Sub
として、閉じる時にファイルAを開くようにしています。
このプログラムではファイルBの閉じた時、
「ファイルAが開いてユーザフォームが表示される&ファイルBは開いたまま」
となっています。
「ファイルAが開いてユーザフォームが表示される&ファイルBは閉じる」
としたいのですが良い手段をご存知であれば教えていただけないでしょうか?
ファイルBの『Workbooks.Open ("ファイルA.xls")』でファイルAが開いて
『Workbook_Open()プロシージャ』が動きますが、、
ファイルBのWorkbook_BeforeCloseがまだ終わっていないために
ファイルBが開いたままのようなのですが解決できませんでした。
|
|