• ベストアンサー

ExcelのマクロでAccessのmdbを起動したい

タイトルどおりです。 Excelマクロで試してみたところ、「ExcelからはAccessを起動できません」という旨のメッセージが出てしまいました。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

ツールで、参照設定して、Microsoft Access xx.0 Object Library Sub AccessOpen() Dim appAcc As Access.Application Dim myPath As String Set appAcc = New Access.Application myPath = "C:\"  '要設定 With appAcc  .OpenCurrentDatabase myPath & "test1.mdb", False  '処理  .Quit End With Set appAcc = Nothing End Sub ただ、単独で、mdbファイルを開けるのでしたら、Excelから、MsQuery でも開けられるはずです。また、通常は、ADOで、mdb ファイルを開けますね。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.1

バージョンにもよりますが、「参照設定」しないと起動しない可能性があります。ExcelのVBEで「ツール」→「参照設定」をクリックし、一覧から「Microsoft Access xx.0 Object Library」にチェックを付けて実行してください。 蛇足ですが、コードサンプルをアップしておきます。 Sub Macro1() ' ' Macro1 Macro ' マクロ作成日 : 2005/6/1 ユーザー名 : GreatDragon ' Dim acObj As Object Set acObj = GetObject("db1.mdb") acObj.Visible = True acObj.docmd.openform "フォーム1" ' End Sub

noname#11057
質問者

お礼

GreatDragonさん ありがとうございます

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • アクセスのマクロ

    アプリケーションを作りたいと思います。 エクセルのマクロ(VBA)はエラーが出るとコードが見えてしまいますが、 アクセスはどうなのでしょうか。うわさによれば見えないとのことですが・・・ その分、下手にエクセルで作るより、アクセスで作ったほうがいいのかと。 また、エクセルの場合は、マクロを含んでいると、起動した時、マクロを有効にするかというメッセージが表示されますが、アクセスはどうなのでしょうか。 アプリケーションを作るときそのようなメッセージは邪魔ですよね。

  • エクセルのマクロからアクセスのマクロ実行命令を出せますか?

    教えてください。 一連の作業をアクセスのマクロとエクセルのマクロを使って作業を完成させました。 まず最初にエクセルのブックを起動し、マクロを実行し作業をさせ、その後にアクセスを起動させ、マクロを実行し、作業ファイルをエキスポートさせ、またエクセルに戻り、エクセルマクロを実行させて作業を関せさせたいと思います。 そこで、エクセルのマクロでアクセスを起動させ、アクセスのマクロを実行させるようなことはできるのでしょうか? よろしくお願いします。

  • アクセスからエクセルの起動ができない

    アクセス2000とエクセル2000で、アクセスからエクセルを起動するマクロを作りましたが、アクセス2000とエクセルXPを使っている環境では、「"RunApp/アプリケーションの実行"アクションを使ってアプリケーションを起動できません。アプリケーションのパスが正しく指定されていないか、アプリケーションのコンポーネントが不足しています。windowsエクスプローラまたはファイルマネージャで、アプリケーションのパスを確認してください」とメッセージが出て、起動できません。 ちなみに、OSはwinXP、オフィスは、XPスタンダードに、アクセス2000をあとからインストールしています。

  • AccessのVBAで、Excelのマクロを起動したい

    環境 OS:XP    OFFICE:2003 Accessで、同一フォルダにあるエクセルのマクロを起動したいのですが、どのようにコーディングすればよろしいでしょうか? フォルダ:C:\test Access:テストAccess.mdb Excel:テストExcel.xls 起動したいマクロ Sub all_delete() Sheets("シートA").Select Cells.Select Selection.Delete Shift:=xlUp End Sub よろしくお願いします。

  • エクセル、アクセス 自動起動

    プログラミングに関しては素人ですので、説明がわかりにくいかもしれませんが、エクセル起動(1.xcl)→エクセルのマクロ起動(Module1)→エクセル終了(1.xcl)→アクセス起動(1.mbb)→アクセスのマクロ起動(Module2)→アクセス終了(1.mbb)→エクセル起動(2.xcl)→エクセルのマクロ起動(Module2)→エクセル終了(2.xcl) といった具合に順番に毎日起しているのですが、一発で一連の起動ができるプログラムがあれば教えていただきたいのですが、よろしくお願い致します。

  • ACCESSでExcelマクロを起動

    ACCESS、Excelの2003を使用しています。 常駐パソコンにACCESSプログラムを起動させておき、朝の6時になったらExcelの標準モジュールに記載しているマクロを起動し、開いたExcelを保存しようとしています。 以下ACCESSに記載しているマクロです。 If Format(Now(), "hh:nn") = "06:00" Then strXlsS = "D:\テスト用ファイル.xls" Set xlApp = CreateObject("Excel.Application") xlApp.Visible = True Set xlbook = xlApp.Workbooks.Open(strXlsS) 'エラー箇所' Application.Run "テスト用ファイル!テスト" End If 実行時エラー2517 プロシージャを見つけることができません。 と、エラーが表示されてしまいます。 該当のExcelのブックは開けているのですが、モジュールのマクロを起動することが出来ません。 書き方がおかしいのでしょうか?

  • AccessのマクロでExcelにエクスポートしたい

    レコード数が5万程度あるクエリを マクロでExcelにエクスポートしたいのですが、 「出力」を選ぶと、「出力する行が多すぎて、指定した出力形式またはMicrosoft Accessの制限を越えています。」のエラーメッセージが表示されてしまいます。 マクロではなく、普通にエクスポートする際は、 Excelのバージョンを選択できるので、正常処理できるのですが、マクロの場合はどうすればいいのでしょうか? 宜しくお願いします。

  • エクセル2007でマクロが使えない

    いままでエクセル2000を使用していたのをエクセル2007に変えました。 エクセルファイルには、マクロプログラムをたくさん使っているのですが、 2007で使ってみると、マクロが起動しません。 マクロセキュリティで有効にすれば使えるのですが、お勧めできないと かいてあります。 今までどうり、普通に使う方法は、どうすれば良いですか。

  • ACCESSからEXCELのマクロを実行

    ACCESSのデータをEXCELに落として、その後、EXCEL上でマクロを実行させたいのですが、可能でしょうか。 ACCESSのVBAでEXCELを操作することができるのは知っているのですが、EXCELの機能のマクロ(罫線を引いたり、始点―終点間に矢印を引いたり)などをしたいのです。 よろしくお願いします。

  • エクセル マクロ起動中のメッセージを表示したい

    いつもお世話になります。 エクセルで、マクロを起動して、動作が終了するのに時間がかかるため、起動中に、「マクロ起動中です」のメッセージが表示されるようにしたいのです。 自分なりに考えて、"A"というメッセージのみのユーザーフォームを作って、マクロの最初と最後に A.show ~中略~ A.Hide としたのですが、表示されたユーザーフォームの×印を押さないとマクロが動きません。 宜しくお願い致します。

専門家に質問してみよう