• 締切済み

エクセルを使用しての印刷方法についてのご質問

実現したいことは、htmlファイルの実行ボタンをクリックすると、データベースからデータを取得してそのデータをプリント出力したいということにつきます。そのためにMSエクセルを使用してデータを貼り付けプリントすることにしました。またプリント機能には、プレビューの機能も 付加したいということです。 次のような方法を考えています ひとつは、サーブレットで動的に生成したExcelデータを ブラウザ側にダウンロードし、それをブラウザ側で起動したExcelに張り付ける方法 もうひとつは、サーブレット内の処理でエクセルのアプリケーションの起動から、セルへのデータのセット、 印刷処理、エクセルの終了処理に及ぶVBSCRIPTを作成して、それら全VBSCRIPTを文字列としてブラウザ側に返してHTMLファイルの中で、VBSCRIPTを実行させる方法です これら2つの実現方法(コーディングの仕方)がわからなくて困っています。 何か良いサンプルコードや別の方法などございましたら よろしくお願いいたします。 (実現方法はどちらか一方でかまいませんし、別の方法でもかまいません) 現在の進捗状況は、HTMLの実行ボタンをクリック して、サーブレットを起動し、サーブレットの処理で jdbc経由でデータベースにアクセスし、SQLを投げてデータを取得します。 これらの処理以降でエクセルへのデータの貼り付けを行いたいのですが、ここからどのようにコーディングすれば よいのかわかりません。 何卒よろしくお願いいたします。 (データベースからデータを取得するところまではできています) サーブレットの起動方法は、HTMLファイルのソースで <FORM method="post" action="http://localhost/servlet/smpl"> の行を挿入しています。 環境 サーバー  WINDOWS NT SERVER 4.0 + IIS 4.0          + JRun 3.0 クライアント WINDOWS 95/98 +IE4.0~5.0 

みんなの回答

  • takebe
  • ベストアンサー率65% (17/26)
回答No.1

印刷ということなので難しいかもしれませんが,サーバ側で生成するファイル形式をCSVにするというのはいかがでしょうか. Content-Disposition: filename=xxx.csv というヘッダを加えれば,とりあえずエクセルは起動するようになります. response.setHeader() などでできるのかな. ただし,CSVなのでフォントの設定などはできませんが... ご参考まで.

mem_masa
質問者

お礼

ご返答ありがとうございます。 印刷時に罫線をきちんとひかないといけないので CSVファイルで扱うのはやめて方がよいのではと思い エクセルへのデータセットを考えています。

関連するQ&A