- ベストアンサー
VBAで文字列を引数とするアドイン関数を呼び出す場合
いつもお世話になります。 ExcelVBAで、アドインから読み込んだ関数を使用する際、 Workbooks("xxx.xla").Application.Run ("xxx") と呼び出すのはいいのですが、もしその関数が 文字列を引数とする場合は、やはり下の書き方のように Workbooks("xxx.xla").Application.Run ("xxx(" & Chr(34) & "C:\work\data.csv" & Chr(34) & ")") と、Chr関数を使用しなければいけないのでしょうか。 もし、もっと簡単な記述がありましたら、ご教授ください。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Runメソッドは マクロ名とその引数を引数としてとります Workbooks("xxx.xls").Application.Run("xxx", "C:\Work\Data.csv") といった具合で 引数を指定すれば良いでしょう スペースなどを含むファイル名などの場合は """C:\PRogram Files\Data\sample.csv""" この場合 "C:\PRogram Files\Data\sample.csv"が引数として渡ります と言った具合です
その他の回答 (1)
- hana-hana3
- ベストアンサー率31% (4940/15541)
"" と打てば文字列を囲む機能が打ち消しになるので、" 単独の意味になります。 MsgBox """" Workbooks("xxx.xla").Application.Run ("xxx(""C:\work\data.csv"")")
お礼
hana-hana3さん、ありがとうございました。 こんなに簡単な方法があったとは、まさに目から鱗です。 まだまだ勉強不足で、ご迷惑をおかけしました。 またなにかありましたら、懲りずによろしくお願いいたします。
お礼
redfox63さん、ありがとうございました。 まだまだわからないことだらけで勉強不足でした。 こんな方法があるとは知りませんでした。 またなにかありましたら、よろしくお願いいたします。