
現在、以下のものを作っています。
1:ブラウザの画面に「EXCEL」というボタンを置く。
2:データをブラウザに表示する。
3:EXCELというボタンを押す
4:ブラウザに表示したデータがエクセルシート形式でそのままブラウザに表示される
こういうのを作っており、今は4の過程で以下のプログラムを入れています。
Response.AddHeader ("content-disposition", "inline; filename=" + fname + ".xls");
しかしこれですと、「ファイルのダウンロード」ボックスが出てきます。
これは、ユーザーが自分でパス指定してダウンロードさせるという方法としては良いのですが、
私がやりたいのはそれではなく、ブラウザにエクセルを表示させたいということです。
誰か知っている方がおられましたらご教授お願いします。
No.2ベストアンサー
- 回答日時:
Content-type: application/vnd.ms-excel
Content-Transfer-Encoding: base64
Content-Disposition: inline;filename=hoge.xls
というヘッダーに変えてみてください。
それでもだめなら、
Content-type: application/vnd.ms-excel
だけにしてみてください。
わざわざありがとうございました。
おっしゃるとおりやってみましたが、それでも
ダウンロードボックスが出てきます。
ダウンロードボックスを出さないでブラウザに表示させることがどうしてもできません。
ちなみに以下のやり方でやっています。
C#です。
Response.ContentType= "application/vnd.ms-excel";
Response.AppendHeader("Content-Transfer-Encoding", "base64");
Response.AddHeader ("content-disposition", "inline; filename=hoge.xls");
// EXCELの出力用のメモリストリームを作成します。
System.IO.MemoryStream memStream = new System.IO.MemoryStream();
// メモリストリームにEXCELエクスポートを行います。
this.xls.Export(rpt.Document, memStream);
// 出力ストリームにEXCELのストリームを出力します。
Response.BinaryWrite(memStream.ToArray());
// バッファリングされているすべての内容をクライアントへ送信します。
Response.End();
↑このやり方でやっても、ヘッダの部分
Response.ContentType= "application/vnd.ms-excel";
Response.AppendHeader("Content-Transfer-Encoding", "base64");
Response.AddHeader ("content-disposition", "inline; filename=hoge.xls");
の部分を
Response.ContentType= "application/vnd.ms-excel";
だけにしても、結果は同じです。
どうしてもブラウザにそのまま表示させることができないのです。
他にやり方はありませんか?
私の方でも色々調べてみたのですが、分かりませんでした。すみません。
No.3
- 回答日時:
うーん、ブラウザのバージョンなどでもかなり挙動が違うので有名ですからね。
以前ためしに
Content-type: text/html;
Content-Disposition: inline; filename=hoge.xls
でうまくいったことがありました。
なぜtext/htmlでうまくいったのかはわかりませんでしたが…
一度試してください。
No.1
- 回答日時:
エクセルシートをそのまま表示したいのであれば、ファイル名をURLに指定するだけで表示されます。
(IEの場合のみです)ASPのコードまでは分りませんが、行き先をファイルにすればできると思います。
ご教授ありがとうございました。
現在はC#でやっています。
Response.ContentType= "application/vnd.ms-excel";
Response.AppendHeader("Content-Transfer-Encoding", "base64");
Response.AddHeader ("content-disposition", "inline; filename=hoge.xls");
// EXCELの出力用のメモリストリームを作成します。
System.IO.MemoryStream memStream = new System.IO.MemoryStream();
// メモリストリームにEXCELエクスポートを行います。
this.xls.Export(rpt.Document, memStream);
// 出力ストリームにEXCELのストリームを出力します。
Response.BinaryWrite(memStream.ToArray());
// バッファリングされているすべての内容をクライアントへ送信します。
Response.End();
↑このやり方でやっても、ヘッダの部分
Response.ContentType= "application/vnd.ms-excel";
Response.AppendHeader("Content-Transfer-Encoding", "base64");
Response.AddHeader ("content-disposition", "inline; filename=hoge.xls");
の部分を
Response.ContentType= "application/vnd.ms-excel";
だけにしても、結果は同じです。
どうしてもブラウザにそのまま表示させることができないのです。
他にやり方はありませんか?
私の方でも色々調べてみたのですが、分かりませんでした。すみません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
プログラミングを学べる!?進化している子どものおもちゃについて専門家に聞いた!
プログラミングを学べるレゴブロックがあることはご存知だろうか。レゴに限らず最近のおもちゃには、プログラミングの要素がどんどん取り入れられているようだ。「教えて!goo」にも、「プログラミングを学べる子供...
-
隣の枝がはみ出してきたら切ってもいい?最もやってはいけないことは?
「隣の木が越境してきて困るが、勝手に切ってはいけないと聞くし…」そう思っている方も多いだろう。実は、2023年4月1日に民法が改正され、この「越境枝」のルールが大きく変わった。 教えて!gooでも「境界から出て...
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GoogleChromeでレイアウトが左...
-
WEBページからのメッセージをVBAで
-
<IMG>のALIGN属性値「absmiddle...
-
プルダウン(リストボックス)の...
-
ブラウザの種類やバージョンに...
-
エクセルでURLからタイトルのみ...
-
XMLを作成してもタグしか表示さ...
-
AfterEffectsでイージーイーズ...
-
Windowsのformでtextareaに入力...
-
MSNのサイトの表示がおかしい
-
Python 3.12.2 か一番最新のパ...
-
掲示板からIPアドレスってど...
-
小さなウインドウで。
-
pixivの消えないブックマークタ...
-
H1タグに改行の<br>を使う
-
\\n \\r \\t について
-
指定URLを新しいウィンドウで開...
-
自分のサイトを開いた時にウィ...
-
異なるメーカー機器同士のVLAN...
-
テキストドキュメントのプレビ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
GoogleChromeでレイアウトが左...
-
<IMG>のALIGN属性値「absmiddle...
-
AIRを使ってブラウザ上でWEBサ...
-
DeepLでエクセルのA列の英文の...
-
doc As HTMLdocumentのコンパイ...
-
ボタンをクリックした時に指定...
-
webブラウザで動作するタイマー...
-
プルダウン(リストボックス)の...
-
HTMLのバージョンの確認方法は?
-
vbaでIEを起動した後、「ログイ...
-
【CSS学習時のブラウザについて...
-
HTMLやCSSでWEBサイトをスラス...
-
ブラウザ依存のレイアウト・・...
-
起動済みのIEをハンドルから操...
-
webページの有効期限が切れてい...
-
VBA オブジェクトが必要です
-
WEBページからのメッセージをVBAで
-
VBAでgetElementByTagName
-
[JAVA]IE→Edge対応時にURLが表...
-
ブラウザの種類やバージョンに...
おすすめ情報