掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
エクセルファイルを開くだけ (ID:86595)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
CreateObjectでファイルを開いた場合、 マクロは実行されませんので、 開いたあと自分でコールしてやる必要があります。 エクセル側に全ての処理が書かれており、 実行するだけでいいのであれば、 Call ShellExecute(Me.hwnd, "Open", "C:\Book1.xls", "", "", SW_SHOWNORMAL) と書けば、Excelが起動されて、Book1.xlsが開かれます。 これならば、Auto_Openも起動します。 もちろんShellでもできますが、こちらの場合、 Excel.exeのフルパスを指定しなければいけないため、 ShellExecuteのほうが無難かと思います。 但し、ExcelファイルがExcel以外に関連付けられていたり、 Excelそのものがインストールされていないと開きませんが。 そういう意味では、例えこちらを使おうとも、 環境に依存する、といえるかもしれません。 また、一つお詫びしなければいけないことが。 Excel.exeに起動引数を与えることはできても、 Excelファイルに起動引数を与えることはどうやらできないようですね。 少し考えれば分かるような当たり前のようなことでした。 失礼致しました。 起動時に、Excelファイルへ起動引数を与えたい場合、 CreateObjectでファイルを開き、 実行したいマクロをコールする際、関数の引数として パラメータを渡してやる以外には、引数を渡せれないような気がします。 但し、これは厳密には起動引数にはなりませんが。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.