- - PR -
ASP.NET WebアプリケーションでExcelワークシートに保護をかけたい
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-02-27 13:07
お世話になります。
現在、アドバンスソフトウェアのExcelCreatorを使用して、 動的にExcelファイルを生成してクライアントにダウンロードする Webアプリケーションを作成しているのですが、 シートに保護をかけたいという要望が出てきました。 しかし、ExcelCreatorはシートの保護には対応していません。 そこで、Officeオートメーションを使用して生成後のブックに 保護をかける処理を考えたのですが、下記の記事を読む限り、 あまり推奨されていない方法のようです。 http://support.microsoft.com/default.aspx?scid=kb;ja;257757 そこで質問なのですが、Officeオートメーションを使用せずに、 Excelのシートに保護をかける方法って、あるのでしょうか? ご存知でしたらご教授ください。よろしくお願い致します。 | ||||
|
投稿日時: 2006-02-27 13:19
VSTO とか。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-02-27 13:34
じゃんぬねっとさん、早速のご回答ありがとうございます。
ご教授頂きましたVSTOについて、早速調べてみました。 Visual Studio Tools For Officeという製品ですね。 Microsoftの製品ページをじっくり読んでみます。 このツールはWebサーバにOfficeを直接インストールすることなく、 マネージコードでExcelファイルが操作できるものなのでしょうか? だとしたらすばらしいですね! 製品ページを読んでもどうしてもわからないことがあったら、 また質問させて頂くかもしれませんが、 とりあえず自分でわかるところまで調べてみます。 | ||||
|
投稿日時: 2006-02-27 13:44
はい、オートメーションはアンマネージですが、VSTO はマネージらしいですね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-02-27 13:49
シートが保護されたxlsファイルを用意しておいて、オーバーレイオープンするとか。
| ||||
|
投稿日時: 2006-02-27 14:03
todoさん、ご回答ありがとうございます。
しかし、その方法は既に試したのですが、シートにあらかじめ保護をかけておくと、 ExcelCreatorがうまく読み書きできないのです。 | ||||
|
投稿日時: 2006-02-28 14:56
アルエです。
VSTOについて、現在調査中です。 とりあえず評価版みたいなものが無いかMicrosoftに直接電話で問い合わせたところ、 評価版は無いという回答でした。 しかし、具体的にやりたいことが実現できるかの確証がとれないと 購入できないということになり、困っています。 一応、Microsoftの電話サポートにやりたいことを具体的に説明し、 実現の可否の回答待ち状態ではあります。 しかし、「販売元」ではなく「ユーザ」からの情報が欲しいという思いがあり、 厚かましいのは重々承知の上でお願いなのですが、 もし下記のようなことがVSTOで実現可能かどうかをご存知の方がいらっしゃいましたら、 ご回答いただけないでしょうか。 <処理> (1) Webサーバ上に書式と数式を埋め込んだExcelのテンプレートを用意しておく (このテンプレートには、シート保護はかかっていない) (2) ExcelCreatorのオーバレイ機能を使用して(1)のxlsファイルにデータを埋め込み、 一時ファイルとして保存 (3) (2)のxlsファイルをVSTOで開き、全てのシートにシート保護をかけて上書き保存 (4) (3)のxlsファイルをResponse.WriteFile()を使用してクライアントにダウンロードする <条件> (4)でダウンロードしたxlsファイルはクライアントのExcelのバージョンがExcel97でも開けなければならない もちろん、本来Microsoftのサポートに問い合わせるべき内容なのは わかった上でのお願いですので、無理にとは言いません。 ただ、需要がありそうな内容ですので、もし既に似たようなことを 実装した経験のある方がいらっしゃいましたら、情報を頂けませんでしょうか。 よろしくお願い致します。 | ||||
|
投稿日時: 2006-02-28 21:31
なぜオートメーションが推奨されないか、というところは、理解していますか?
サーバ環境では、画面がない、ユーザが操作できない、というところが、Office 製品の目的と反しています。VSTO であれ、同じではないでしょうか。 出来る/出来ないの問題だけで考えれば、マクロで実行可能なことはほぼすべて出来ると考えて支障はないと思います。しかし、何かあったときに、Office 製品はダイアログを表示し、ユーザに選択を求めてきます。これが機能しなくなります。これを回避するために、厳重にテストを行うようにと、書いてあったと思います。
|
1|2|3
次のページへ»