Archives
2005.12.19: ASP.NET でクライアントの Excel を起動する
ASP.NETで社内イントラネット用にWebアプリケーションを構築。MS-SQL ServerのデータをExcelで印刷することになった。その時にJavascriptを使ってクライアント側のExcelを起動してマクロを走らせた。実行する為には、WEBサーバをIEの《信頼済みサイト》に登録する必要があります。
面倒なCOM系の設定は不要なようだ。
(サーバ:Windows2000、クライアント:WindowsXP Pro SP2)
《コードサンプル》
function xlRun(xlFile, xlMacro, xlCmd, xlPara) {
var xlApp = new ActiveXObject("Excel.Application");
xlApp.DisplayAlerts = false;
xlApp.Visible = true;
xlApp.Workbooks.Open(xlFile, 0, true);
xlApp.Run(xlMacro, xlCmd, xlPara);
xlApp.Quit();
xlApp = null;
}
《簡単な説明》
フルパスで指定されたExcelファイルをRead-Onlyで開いて、マクロを実行する。
ASP.NET上では、Button1などにonClickイベントを割り当てる。
- xlFile
- Excelファイルをフルパスで指定する。ネットワーク上の公開フォルダも可。
- xlMacro
- 実行するマクロの名前
- xlCmd, xlPara
- マクロに渡す引数








