- PR -

ASP.NETでExcel.Applicationを使用したい

1
投稿者投稿内容
yoshika
常連さん
会議室デビュー日: 2005/10/31
投稿数: 28
投稿日時: 2007-06-19 13:54
初歩的な質問だと思います。(すみません。。)

ASP.NETで開発しています。
DBから検索結果を得て、Excelファイルに編集して出力(クライアントにダウンロード)
させたいのですが、
いろいろ調べていると、Excel.Applicationクラスをnewして処理する方法があることが
わかりました。
そこでこのExcel.Applicationを使用するにはどのような設定が必要なのでしょうか?
そのまま書いただけでは認識されないので、importsが必要なのかな?と思いますが
いろいろ検索しても見当たりませんでした。
教えてください。

本来の目的である
DBから検索結果を得て、Excelファイルに編集してクライアントにダウンロードさせる、という処理についても参考になるサイトなどありましたら
ご教示ください。

csv,tsvファイルなどテキストファイルではなく、Excelの書式を指定したものを
ダウンロードしたいです。
テンプレートとして用いるExcelファイルをWebサーバに保存しておいて利用したいです。

よろしくお願いいたします。

[ メッセージ編集済み 編集者: yoshika 編集日時 2007-06-19 13:59 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-06-19 15:15
引用:

yoshikaさんの書き込み (2007-06-19 13:54) より:

そこでこのExcel.Applicationを使用するにはどのような設定が必要なのでしょうか?


Microsoft Excel xx.x Object Library を参照に追加すれば使えるようにはなります。ただし、ASP.NET での使用は技術的にもライセンス的にもお勧めできません。3rd パーティ製品に頼るなどした方が良いです。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
yoshika
常連さん
会議室デビュー日: 2005/10/31
投稿数: 28
投稿日時: 2007-06-19 15:45
ご回答ありがとうございます。

ライセンス的にも、ということは
WebサーバにもExcelのソフトがインストールされていなければならない、
ということでしょうか。
そのソフトをWebサーバの利用者で利用するからライセンス的に問題あり、と
いう認識で合ってますか?
一郎
ぬし
会議室デビュー日: 2002/10/11
投稿数: 1081
投稿日時: 2007-06-19 16:26
引用:

yoshikaさんの書き込み (2007-06-19 15:45) より:
ライセンス的にも、ということは
WebサーバにもExcelのソフトがインストールされていなければならない、
ということでしょうか。


クライアントの数だけライセンスが必要ということです。

http://support.microsoft.com/kb/257757/ja
ここに、
現在のライセンス ガイドラインでは、クライアントサイドに Office のライセンスを受けたコピーがない場合は、Office アプリケーションをサーバーに配置して、クライアント要求に対するサービスを提供することは許可されません。サーバーサイド オートメーションを使用して、ライセンスを受けていないワークステーションに Office 機能を提供することは、使用許諾契約書 (EULA: End User License Agreement) には含まれていません。
と書いてあります。
その他、マイクロソフトが「Office のサーバーサイド オートメーションの推奨もサポートも行ってい(ない)」理由が書いてありますので読んでみてください。

[ メッセージ編集済み 編集者: 一郎 編集日時 2007-06-19 16:28 ]
yoshika
常連さん
会議室デビュー日: 2005/10/31
投稿数: 28
投稿日時: 2007-06-19 16:52
ご回答ありがとうございます。

「Officeのサーバサイドオートメーションについて」のページを見てみました。

>現在のライセンス ガイドラインでは、クライアントサイドに Office のライセンスを受けたコピーがない場合は、Office アプリケーションをサーバーに配置して、クライアント要求に対するサービスを提供することは許可されません。

という記述がありますが、WebサーバでOfficeを動作させる場合は、クライアント数分のライセンスが必要で、そのライセンスのコピーをクライアントにおく必要がある、ということなんですよね??
(ご指摘のくりかえしになってますね)

クライアントサイドで対応するように考えたいと思います。
ありがとうございました。
一郎
ぬし
会議室デビュー日: 2002/10/11
投稿数: 1081
投稿日時: 2007-06-19 17:09
ライセンスのコピーじゃなくてOfficeのコピーですね。
コピーと言っているのはCDなどからインストールの時にコピーされたファイルや設定などの事だろうと思います。

つまり「クライアントにOfficeがインストールされていてライセンス認証されていなければならない」ってことじゃないでしょうか。
yoshika
常連さん
会議室デビュー日: 2005/10/31
投稿数: 28
投稿日時: 2007-06-19 17:15
しつこくすみません。

ということは、Webサーバにアクセスして.NETのサービスを利用しているクライアントPCにOfficeが正規のライセンスでインストールされていればよいのでしょうか?
だとしたら、この問題はクリアしていることになりますが・・・
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-06-19 17:20
引用:

yoshikaさんの書き込み (2007-06-19 17:15) より:

ということは、Webサーバにアクセスして.NETのサービスを利用しているクライアントPCにOfficeが正規のライセンスでインストールされていればよいのでしょうか?
だとしたら、この問題はクリアしていることになりますが・・・


そうなるでしょうね。次に技術的な問題をご覧になってください。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)