- - PR -
VS2005 VB Webアプリ エクセル操作
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-03-10 15:26
お世話になります。
ご存知の方いらっしゃいまいたら、ご教授お願いします。 開発環境: WinXP サーバ: WinSV 2003 開発ツール・言語: VS2005 VB DB: SQLServer2000 にて開発しております。 DBに保存してあるデータを、エクセルに出力をすることを確認しております。 GridViewをエクセルに直接出力することはご教授いただき可能でしたが、 その後Webでいろいろ調べると、エクセル自体を操作できそうなことがわかり 実装してみました。 「Comの設定をして・・・」 「エクセルにピボットテーブルを作成する .NET VBコードを実装して・・・」 とコードを書き実行してみるとなんとデバック環境下では実現できてしまいました! そのモジュールを、サーバへ「Web発行」しサーバ側へアクセスすると、 なんと 「ActiveX コンポーネントを作成できません。 説明: 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。エラーに関する詳細および例外の発生場所については、スタック トレースを参照してください。 例外の詳細: System.Exception: ActiveX コンポーネントを作成できません。 」 スタックとレースは、 「[Exception: ActiveX コンポーネントを作成できません。] Microsoft.VisualBasic.Interaction.CreateObject(String ProgId, String ServerName) ・(以下略)」 といわれてしまいます。 どうもActiveXを使ったエクセル起動ができないとうい感じ??? .NET FrameWorkがインストールされているされていないの問題化と思いましたが、 どうも違うようです。 以前に、NetScape+JAVAでクライアントへの出力を試みたときに、 「クライアントのモジュールを実行するなんて無理」 という結論になっています。(ちょっとかじっただけですが) セキュリティいレベルで考えると確かに無理かなとも思えるのですが、 どうも開発環境でできてしまうとWindowsオリジナル構成(OS、OFFICE、IIS)では 可能なのではないかという希望もあります。 ご存知の方いらっしゃいましたら、ご教授よろしくお願いします。 | ||||
|
投稿日時: 2006-03-10 15:57
サーバに Excel はインストールされていますか? _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||
|
投稿日時: 2006-03-10 16:01
サーバへは、OFFICEはすべてインストールしてあります。
ついでかもしれませんが、VS2005もインストールしてあります。 道具立ては、すべて開発機と同じです。 | ||||
|
投稿日時: 2006-03-10 16:34
その Excel.Application ってサーバで起動したいんじゃないんですか? クライアント側で起動したいんですか!? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-03-10 16:37
http://support.microsoft.com/default.aspx?scid=KB;ja;JP257757
http://www.atmarkit.co.jp/fdotnet/index/bbs/dir91.html | ||||
|
投稿日時: 2006-03-10 16:48
サーバサイドで Office を実行することは可能です。 が、開発元の Microsoft 自体が推奨していない用法ですから、やらないで済むならやらない方が無難です。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||
|
投稿日時: 2006-03-10 16:50
なら、DCOMCNFG.exe で実行環境の調整をしてください。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||
|
投稿日時: 2006-03-10 19:21
お世話になります。
じゃんぬねっとさん、渋木宏明(ひどり)さん、todoさんありがとうございます。 さらに、遅くなってすみません。会議によび出されまして・・・ >その Excel.Application ってサーバで起動したいんじゃないんですか? 探した資料がそのようになっていたので、CreateObject()でエクセルを起動しています。 これがサーバに相当するならば、サーバ起動となります。 やりたいことは、 Webサービスで、SQLServerのクエリから出力するのではなく、 DBをReadして、起動したエクセルのCELLを指定して出力したいです。 結果、中計などを盛り込んだ定型帳票を自動的に作成する。 というものです。 よって、GridViewをエクセルに出力するよりも、よりユーザが見慣れた 形式で表現するこができる、予定だったのですが・・・ DCOMCNFG.exeですね。ありがとうございます。 |