• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:AccessからExcelマクロを実行したい)

AccessからExcelマクロを実行したい

noname#89342の回答

  • ベストアンサー
noname#89342
noname#89342
回答No.1

私も良く知らないのですが、 エクセルのマクロに Publicを付けて宣言して、 >Myobj.Run マクロ名 を obj.Run マクロ名 として実行してみてください。

kanon_com
質問者

お礼

いろいろ試した結果、うまくいくようになりました。 やはり標準モジュールにマクロを置く必要があるようです。 ソースは obj.run ファイル名!Module1.マクロ名 としました。 もし調べて下さったいたら、お手数をおかけしてすいませんでした。 ヒントをいただき、ありがとうございました。

kanon_com
質問者

補足

さっそく試してみましたが、残念ながらダメでした。 Excel側のマクロはもともとボタンがクリックされると実行するというものだったので Privateになっていました。これをPublicにというのは、かなり的を得てると思ったのですが・・・。 マクロの格納場所も関係するのでしょうか? もしご存知なら、また回答をお願いします。 まずは、回答ありがとうございました。

関連するQ&A

  • バッチファイルからVBA実行でエラー

    バッチファイルからエクセルのマクロを動かそうとしているのですが、 処理はきちんと動いて処理を行なうのに、エラーウィンドウが出力され ”未知実行時エラーです”(画像添付)となり困っています。 どうすれば、このエラーを無くせますでしょうか? 因みにバッチファイルは以下の通りです。 Dim obj Set obj = WScript.CreateObject("Excel.Application") obj.Visible = True obj.Workbooks.Open "C:\Documents and Settings\ne05576\My Documents\Datamove.xls" obj.Application.Run "FileMove" よろしくお願いします。

  • vbsで、フォルダ内にあるcsvファイル全てを開き、マクロを起動させた

    vbsで、フォルダ内にあるcsvファイル全てを開き、マクロを起動させたい。 こんにちは。 お世話になっております。 さて、最初はバッチでどうにかならないかと思っていましたが、下記vbsソースを見つけ、 早速チャレンジしたのですが、ファイルが開くところまではうまく行きますが、「マクロ Macro1がありません」というメッセージが出てしまい、マクロが実行されません。 手動でマクロを実行しようとするときに出てくるマクロ一覧には、PERSONAL.XLS:Macro1と、表示されております。 マクロの保存先をまちがえているのでしょうか? また、あるフォルダのcsvファイル全てに対して1つのvbsキックで処理が行なわれるようにするには、どの様にすればいいでしょうか? よろしくお願いします。 ----------------------------------------------------------------------- Dim obj Set obj = WScript.CreateObject("Excel.Application") obj.Visible = True obj.Workbooks.Open "C:\Documents and Settings\Administrator\My Documents\001.xls" obj.Application.Run "Macro1"

  • 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のブックは開けているのですが、モジュールのマクロを起動することが出来ません。 書き方がおかしいのでしょうか?

  • VBscriptでEXCELを起動

    今、非常に悩んでいる問題があります。 VBscriptでEXCELを起動したいのですがうまく行きません。 (Web画面であるボタンを押下すると、Webサーバ上のEXCELが開くというものです) プログラム的には (1) Dim excel Set excel = GetObject("", "Excel.Application") excel.Visible = True excel.Workbooks.Open "http://ホスト名/フォルダ名/ファイル名.xls" Set WK_excel = Nothing (2) Dim excel Set excel = CreateObject("Excel.Application") excel.Visible = True excel.Workbooks.Open "http://ホスト名/フォルダ名/ファイル名.xls" Set WK_excel = Nothing の二通り(他いろいろ)を試したのですが、何もおきずに終了します。 同じことをVB6.0でするとうまく行くのですが・・・ はっきり言うとVBscriptに関して知識がなく 質問内容も説明が分かりにくいかもしれませんが よろしくお願いいたします。

  • UWSCからエクセルのマクロを実行

    最近UWSCというソフトを使うようになりました。 で、エクセルからSHELLをつかってUWSCを立ち上げ実行し、UWSCの最後に再度エクセルの指定したマクロを実行したいと思っています。 エクセルファイル名= AAA.xls Excel = GETACTIVEOLEOBJ("Excel.Application" ,エクセルファイル名) ---- 中略 ---- Excel.Visible = True ACW(GETID("MICROSOFT EXCEL - " + エクセルファイル名 ,"XLMAIN"),-4,-4,1288,1002,0) CTRLWIN(GETID("MICROSOFT EXCEL"), MAX) msgbox("完了しました。") Excel.Application.Run エクセルファイル名 & "!Macro1" といったようなスクリプトを組んだのですが、なにもないままUWSCが終了してしまいます。 UWSCから指定のエクセルマクロを実行する方法を教えてください。

  • WSHで、EXCELにワークシートをCSVから読み込んで追加したい。

    WSHを使って、EXCELを起動して、既存のCSVファイルからデータを読み込みたいのですが、複数のCSVから読み込むなどして、同じワークブックの新しいシートにCSVから読み込んだデータを追加していきたいのですが、どうやればよいのかわかりません。 下のソースのようにしたのですが、そうすると、別のワークブックとして開いてしまうので、わからなくなってしまいました。お願いします。 set Exl=CreateObject("Excel.Application") Exl.Visible=True Exl.workbooks.add Exl.workbooks.OpenText "c:\data.csv"

  • ASPでExcel起動後マクロ実行

    似たような質問があったのですが、解決できませんでしたので質問させて頂きます。 下記のプログラムで、ASPでExcelを起動後、マクロを実行させてたいと考えています。 Set objEx = Server.CreateObject(Excel.Application) objEx.Application.Visible = True objEx.Workbooks.Open "C:\Excel\hoge.xls" objEx.Run("hoge.xls!Module1.macro1()") しかし、excelがバックグラウンドで実行されて表示されないので困っています。表示させる方法はあるのでしょうか? アドバイスお願い致します。

  • エクセルから現在起動しているアクセスファイルをアクティブにしたい

    現在エクセルとアクセスを開いています。 エクセルマクロで現在開いているアクセスをアクティブにしたいのですがうまくいきません。 Sub アクセスをアクティブにする() Dim app As Object Set app = CreateObject("Access.Application") app.Application.Visible = True app.Visible = True End Sub これを実行すると新たに空のアクセスアプリケーションが開きます。 (app.Application.Visible = True)を抜いても同じです。 現在起動中のアクセスファイル(○○○.mdb)をエクセルからアクティブにするにはどうすればいいのでしょうか? ご教授よろしくお願いします。

  • パスワード付のエクセルファイルをアクセスから開く方

    アクセスからエクセルのファイルを開きたいのですがうまくできません。 エクセルにはパスワードがかかっています。 なので Dim xlApp As Object Dim xlWbk As Object Set xlApp = CreateObject("Excel.Application") xlApp.Visible = True Set xlWbk = xlApp.Workbooks.Open("C:\2010.xlsx", , , , Password:="0000") Set xlApp = Nothing としたのですが、エクセルファイルが立ち上がりパスワード入力画面が表示されます。 , , , , Password:="0000" が無視されているようです。 パスワード付のエクセルファイルをアクセスから開く方法をご教授ください。

  • vbsでexcelファイルを印刷したいのですが、印刷部数の設定がどうし

    vbsでexcelファイルを印刷したいのですが、印刷部数の設定がどうしてもわかりません。 他で見つけたスクリプトですが…。 Set obj = CreateObject("Excel.Application") Set WSHShell = CreateObject("Wscript.Shell") Set objWkBk = obj.Workbooks.Open("D:\TEST.xlsx") obj.ActiveWindow.SelectedSheets.PrintOut() obj.quit() Set obj = Nothing ご教授お願いいたします。