• ベストアンサー

Excel2003のマクロでプログラムを実行

Excel2003で外部のプログラムを実行したいと思います。 マクロでどのような記述をすれば、プログラムを呼び出すことが出来ますか? 実際にしたいことは、Excelでプログラムを起動>3分後、次のプログラムを起動する という動作です。

  • r2san
  • お礼率25% (1309/5228)

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

「外部のプログラム」って具体的に何か不明ですが,たとえばエクスプローラにexeプログラムを実行させるなら shell "c:\保存場所\プログラム.exe" vbnormalfocus のような具合に呼び出せます。 作成例:3分後に外部プログラムのワードを起動する sub start() application.ontime now + timeserial(0, 3, 0), "main" end sub sub main() shell "WINWORD.exe", vbnormalfocus end sub #補足 「外部プログラム」によっては,たとえばCreateobject等を利用できる場合もあります。

r2san
質問者

お礼

ご回答ありがとうございました。非常にわかりやすいご回答ありがとうございました。

関連するQ&A

  • excel2013でマクロを複数独立して実行する

    今までEXCEL2010まではexcelを同時に独立して起動し、それぞれのマクロを実行できましたが、 2013はexcelを複数開くと表示は分かれて同時に見えますが、複数のEXCELに互いに関係ない プログラムをマクロで実行するとひとつのマクロしか実行されず他方は止まってしまいます。 2010以前のexcelのように複数のexcelを独立して作りマクロをそれぞれで同時に動かすには どうしたらよいでしょうか。

  • たまにマクロを実行できないときがある

    Excel VBAを使っていて、 たまにマクロを実行できないときがあります。 特にデバッグ途中というわけでもないのに、 マクロで実行したいプログラムを選択しても実行ボタンがグレー色になっており 実行することができません。 全てのプログラムではなく、実行途中に変な操作が入り、 停止したものだけです。 excelを再起動すると元に戻ります。 これはどういう状態にあるのでしょうか? 再起動せずに復帰する方法を教えてください。

  • EXCEL2010でふりがなマクロを実行したら

    EXCEL 2003で作成したファイルをEXCEL 2010で開いて、以下のマクロを実行しました。 Private Sub CommandButton1_Click() Selection.SetPhonetic Selection.Phonetics.Visible = True End Sub 約4500行ある名前(テキストからのコピペ)全ての行にふりがなを振るためです。 ところが、EXCEL 2003ではほんの数秒で完了するのですがEXCEL 2010で実行した時 10分以上掛かりました。 何か解決策はあるのでしょうか。 因みにEXCEL 2003はWindowsXP、EXCEL 2010はWindows7、それぞれのマシンで 今後も同じマクロを実行する状況にあります。

  • Excel2003でマクロを組みました。

    Excel2003でマクロを組みました。 それなりにコードを書き込んだので、ファイルとしての容量が3MBくらいあります。 ためしにソース(Module1~35)を全て削除してみたら、2.2MBまで減りました。 (思ったより減らなかったですが) ファイル容量を減らしたいし、マクロを実行する側としてはソースはいらないので、 C言語のソースをコンパイルして実行ファイルだけを取り出して使うように、 (=プログラムの実行にはソースは必要無いように) Excelファイルからマクロの実行部分だけを抜き出す、 なんてことは可能でしょうか。 マクロとプログラムは違うから不可能でしょうか。

  • Excel97のマクロについて

    Excel97で動くマクロプログラムがあります。 Ctrl+aでマクロが起動するようになっており、いろいろ動くのですが、Excel2000で起動しないため、起動するように直してほしい、と依頼を受け、Excel2000で開き、Moduleの中身を見てみたのですが、中身が空っぽです。もちろん各シートやThisWorkbookの中も一つ一つ開いて確認しましたが記述が何もありません。(ツール→マクロ→マクロで見てもありません) ただ、シート上に”マクロプログラム”という記述があり、 \A {GOTO}A40~{GOTO}C45~  /WTB {IF CK27=1}/RVCG14..CV14~CG31~ ・・・ といった記述があり、どうもこれがプログラムのようなのですが、どういう仕組みでこのExcelが動いているのかまったくわかりません。 ちなみにExcel97でModuleを見ても中身は空っぽでした。 このマクロプログラムについて何か情報をお持ちの方、教えてください。よろしくお願いいたします。

  • 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がバックグラウンドで実行されて表示されないので困っています。表示させる方法はあるのでしょうか? アドバイスお願い致します。

  • エクセルのマクロを記述したファイルを呼び出して実行

    エクセルのマクロを記述した外部ファイルを作成しておいて メイン(普通)のマクロの実行中にそのファイルを読み込んで、 マクロを実行させることは可能でしょうか? 可能なら方法をお願いします。

  • マクロの自動実行

    会社のパソコンで毎朝使うエクセルがあるので、そのエクセルはスタートアップに入れております。 実際にはそのエクセルの中でマクロを実行するのですが、スタートアップではエクセルが立ち上がるだけで、マクロまで自動で実行してくれるものではありません。 エクセルが立ち上がると同時に指定のマクロプログラムが走るように…なーんてことができるのでしょうか?? どなたか教えてください。よろしくおねがいします。

  • EXCEL2000で作成したマクロが2002で実行できない。

    EXCEL2000で作成したマクロがEXCEL2002で実行できずに、 困っています。 ファイルは開けるのですが、マクロが実行できないのです。 セキュリティーレベルも低にしてもだめです。 どうすれば、2000で作成したマクロを2002で実行できるようになるでしょうか? よろしくお願いします。

  • 【Excel】メモリ不足でマクロが消える?

    他の環境で作成したマクロ付きのExcelファイルを、別のパソコンに送付し、そこで開こうとすると次の現象が発生してしまいます。 ・上書き保存しようとすると「この操作を完了するにはメモリが不足しています。扱うデータ量を減らすか、他のアプリケーションを終了してください。使用できるメモリを増やすには、以下を検討してください。 -64ビット版の Microsoft Excel を使う。」と表示され、保存ができない。 ・マクロを使用しようとすると「マクロ '(ファイル名).xlsm!(マクロ名)' を実行できません。このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。」と表示され、マクロを実行できない。 ・マクロを確認しようとエディターを開くと、モジュールのみが存在し、その中身のマクロの記述は白紙になって存在しない。 ・全く同じようにマクロ付きのExcelファイルを作成し送付しても、ファイルによって正常に動作するものもある。(Excel自体がマクロ無効の設定になっている訳ではなく、全てのExcelファイルに対してメモリ不足を通知される訳ではない。) この際、必ずしもファイルサイズのより大きいファイルが正常に動かないとは限らず、1,453KBでも正常に動くファイルもあれば、537KBでも正常に動かないファイルもある(ただし、マクロの記述量自体は上記の1,453KBのファイルよりも、537KBのファイルの方が多い)。 これを踏まえた上で質問なのですが、 Q1. この症状の原因は実行環境とファイルサイズ(マクロの記述量?)によるものなのでしょうか? Q2. この症状の回避方法は、あまり大きなマクロファイルは作成しないことしかないのでしょうか? 尚、Excelファイルの作成元の環境はMacOSX 10.9.5,Excel for Mac 2011、 送付先の正常に動作しない環境はWindows8.1,Excel2016です。

専門家に質問してみよう