
No.3ベストアンサー
- 回答日時:
ランタイムは使ったことないのですが、以下ではどうでしょうか。
(Access を指定しない方法)
Dim acMdb As Object
Set acMdb = GetObject("D:\Hoge\B.mdb")
acMdb.Application.Visible = True
acMdb.Application.UserControl = True
acMdb.Application.DoCmd.OpenForm "フォームB"
Set acMdb = Nothing
※フォームのクローズも acMdb.Application.DoCmd.Close のように
No.4
- 回答日時:
そご参考になさってみてはかがでしょうか?
Shellかなんかで目的のMDBを起動しておいてからGetObjectなどをすればいいのかもしれません。(うろおぼえなので外れかも)
他の方法としては、
(01)「別のmdb」側に、標準モジュールで目的のフォームを開くプロシージャを書く。FunctionかSubかどっちか忘れましたけど、どちらかか、両方か。Docmdなどで普通に開く簡単な1行コードでOKです。このプロシージャをtest01()とします。
(02)「別のmdb」をVBEの画面から「参照設定」でmdbの参照設定を施す。
これで「別のmdb」の標準モジュールのプロシージャを直接Callできるようになります。
(03)呼び出しもとのプロシージャから、
コマンドボタンのクリックイベントで
Call test01()
とでもすれば、呼び出しもとのAccessウィンドウの中で目的のフォームが開きます。
以上、ランタイム環境でやったことはありませんが、もしかしたらできるかもしれません。
※通常mdbを参照設定するときは、汎用(共用)モジュールなどを格納することが多いと思います。のべつまくなしにmdbに参照設定をかけると、ちょっとどうなるのかわかりませんので、たくさんのmdbを参照設定する場合は、実験しながら試してみてください。
No.2
- 回答日時:
#1です
すみません。
読み落としていました。
> そのフォームはMDB起動時に開くフォームとは別のフォーム
mdb オープンでそのフォームは開かれるようなので、
acApp.DoCmd.Close
で閉じてください。
この回答への補足
ありがとうございます!
やった!出来た!
と思ったのですが…、
実はこのプログラムはAccessランタイム上で動かすことも有り得るのです。
Access Application となっているからだと思うのですが、ランタイム環境では実行時エラーが出てしまいました(>_<)
アクセスでもランタイムでも動くように記述は出来ないでしょうか?
度々申しわけありません。
No.1
- 回答日時:
Accessをもう一個立ち上げ B.mdbを開き、さらにフォームBを開く例となります。
Dim acApp As Object
Set acApp = CreateObject("Access.Application")
acApp.OpenCurrentDatabase "D:\Hoge\B.mdb"
acApp.Visible = True
acApp.UserControl = True
acApp.DoCmd.OpenForm "フォームB"
Set acApp = Nothing
これでAccessは2つ起動されたことになるので、その後で自分をQuitすれば、立ち上げた側だけが残ります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
別のAccessファイルのフォームを開くには
Access(アクセス)
-
ACCESS VBAで別のACCESS(mdb)を起動できますか
Visual Basic(VBA)
-
MS Accessでフォームの「開く時」と「読込み時」のイベントの違い
Access(アクセス)
-
-
4
AccessのFormの設定で、開いた時に必ず最大化で表示する方法が分からず困っています
Access(アクセス)
-
5
Access VBAでタブコントロールで選択するタブをしていするには。
Access(アクセス)
-
6
Access2007で複数のチェックボックスにチェックが入らない
Access(アクセス)
-
7
Accessの入力フォームから、テーブルの添付ファイル型にファイルを入力する方法について
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access サブフォームでの選択行...
-
別MDBのフォームを起動
-
Access2000 サブフォームのReco...
-
Access 複数フォームを...
-
Access レイアウト変更したサブ...
-
アクセス2003 - レコード追...
-
access 2019で、メインフオーム...
-
access vbaのコンパイルエラー...
-
Accessでサブフォームの中の並...
-
2回目に画面のレコードセットの...
-
accessでオートナンバーを使わ...
-
動画編集アプリvllo抽出エラー
-
Accessでフォームに自動入力し...
-
PDFファイル/抽出許可され...
-
X-Ripperというフリーウェアに...
-
サブフォームを利用したクエリ...
-
ACCESS フォームで入力データ...
-
入力した値をコンボボックスに...
-
Access 指定したレコードへ移動
-
Accessで○ヶ月前以前を抽出する...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access サブフォームでの選択行...
-
2回目に画面のレコードセットの...
-
Access 複数フォームを...
-
access サブフォームにリストを...
-
Access2000、これはいったい・...
-
(ACCESS)条件に応じて、テキ...
-
Access2000 サブフォームのReco...
-
サブフォームが見えなくなる。
-
初心者です。accessで請求書を...
-
ACCSESS2013VBA フォームのレコ...
-
サブフォームのデータを保存す...
-
AccessのFormのみをスクリーン...
-
Accessで、一覧からクリックし...
-
Accessのサブフォームから値を...
-
Accessで、サブフォームのある...
-
サブフォームでのダブルクリッ...
-
ACCESSでfilterとorderbyについて
-
ACCESSでのデータ削除について
-
アクセスでサブフォームのレコ...
-
サブフォームでフィルタしたデ...
おすすめ情報