Page 843 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼コマンドライン引数 晴香 03/3/6(木) 17:47 ┣Re:コマンドライン引数 よろずや 03/3/6(木) 22:44 ┃ ┗Re:コマンドライン引数 こう 03/3/7(金) 2:00 ┗よろずやさん、こうさんありがとう☆ 晴香 03/3/7(金) 9:33 ─────────────────────────────────────── ■題名 : コマンドライン引数 ■名前 : 晴香 ■日付 : 03/3/6(木) 17:47 -------------------------------------------------------------------------
VBでデータとなるファイルのパスを取得してそのパスを 引数としてexcelのマクロを起動させることって出来ないのですか? |
▼晴香 さん: >VBでデータとなるファイルのパスを取得してそのパスを >引数としてexcelのマクロを起動させることって出来ないのですか? できません。 (バージョンによってはできることもありますが、お勧めしません。) 代替方法はいろいろあります。 (1)引数として、ファイル名を渡す。 xxx.xls, xxx.txt, xxx.csv 等 実際にそのファイルが開かれます。 (2)ファイル渡し。 決め打ちのファイル名で、引数を渡す。 マクロでそのファイルを読んで、引数を受け取る。 (3)環境変数渡し。 決め打ちの環境変数名で、引数を渡す。 マクロでその環境変数を読んで、引数を受け取る。 他にもあるかな... |
晴香さん,よろずやさん こんにちわ。 >できません。 >他にもあるかな... WSHを使う案です。 以下のテキストを拡張子.bvsで保存し実行してください ---------------------------------------------------- Dim MyObject Set MyObject = CreateObject( "Excel.Application" ) With MyObject .Visible = True Set MyBook = .Workbooks.Open ("D:\test01.xls") Set MySht = MyBook.Sheets(1) MySht.Cells( 1, 1 ) = "abc" .Run ("test01.xls!testmacro") End With ---------------------------------------------------- D:\test01.xlsのSheet1のCell(1,1)に"abc"を設定した後, testmacroを実行させます。 testmacroでSheet1のCell(1,1)の値を取得してください。 |
▼晴香 さん: >VBでデータとなるファイルのパスを取得してそのパスを >引数としてexcelのマクロを起動させることって出来ないのですか? 無理なんですね。トホホ…。 わざわざたくさんの代替案をありがとうございます。 テキストファイルに取得したパスを書き込んでそのファイルを 見る方法でいこーと思います。 また無理なこと聞いちゃうかもしれないけど、そのときは すみませんがよろしくお願いします。 |