プロが教える店舗&オフィスのセキュリティ対策術

Excel VBAで別のブックからユーザーフォームの閉じたいのですが
うまくいきません。
教えてください。

Private Sub CommandButton2_Click()
Application.Visible = False
Unload Workbook.("材料リスクマップ検索Ver2.xls")UserForm3・・・・※
Workbooks.Close userform3:=ThisWorkbook.Path & "あああ.xls"
Workbooks("\いいい.xls").Close savechanges:=False
UserForm1.Show vbModeless
End Sub
※印のところが赤字にかわります。
コマンドボタン2は、いいい.xlsにあり、フォームを閉じたいのはあああ.xlsのUserform3です。
その後、ファイル名いいい.xlsは閉じます。


コードが間違っているかと思いますが、どんな風にすればよいかわかりません。初歩的なこととは思いますがよろしくお願い致します。

A 回答 (1件)

質問のコードはわからない所もあるので、


>コマンドボタン2は、いいい.xlsにあり、フォームを閉じたいのはあああ.xlsのUserform3です。
だけです。

直接は難しそうなので、ユーザーフォームのある「あああ.xls」の標準モジュールに、UserForm3を閉じる関数を作っておく。
Public Sub hideUserForm3()
UserForm3.Hide
End Sub

その関数を「いいい.xls」から、Application.Runで呼び出すモジュール(その後自分を閉じる)
Private Sub CommandButton2_Click()
Application.Run ("あああ.xls!hideUserForm3")
ThisWorkbook.Close SaveChanges:=False
End Sub
    • good
    • 1
この回答へのお礼

ありがとうございました。
UserForm3は、いいいファイルから閉じることが出来ました。

お礼日時:2008/01/12 22:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています