C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: ASPでEXCEL出力


(過去ログ 55 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■31085 / inTopicNo.1)  ASPでEXCEL出力
  
□投稿者/ 青雉 (1回)-(2009/01/15(Thu) 10:07:46)

分類:[レガシ ASP] 

こんにちわ。

ASPにて画面のEXCEL出力について分からず困っております。

背景画像を設定して背景画像に合わせた場所にCSSと<DIV>タグで配置を決めたテキストボックス等が
設定してある画面をそのままEXCEL出力したいと思っています。

出力については色々調べた結果、以下のコードで出力はできたのですが
出力したEXCELを開いてみると下の方にテキストボックス等がひとまとめのように
固まっていました。。。

response.ContentType = "application/vnd.ms-excel"
response.write "<html>"
response.write "<meta http-equiv=""Content-Type"" content=""text/html; charset=Shift_JIS"">"
response.write "</table>"
response.write "</html>"

CSSと<DIV>タグをresponse.writeで書いてみましたが変化ありませんでしたので
どの様に書けば希望の出力ができるかわかりません。

他にいい方法があれば合わせて教えて下さい。

皆様よりご教示頂きたいと存じます。

どうぞよろしくお願い致します。

引用返信 編集キー/
■31090 / inTopicNo.2)  Re[1]: ASPでEXCEL出力
□投稿者/ オショウ (73回)-(2009/01/15(Thu) 10:30:28)
> 他にいい方法があれば合わせて教えて下さい。

  レガシASPですか・・・
  私は、アドバンスソフトウェアのExcelCreator使って出力しました。

  ttp://www.adv.co.jp/products.htm

  Excel使う方法もありますが、Excelが正常に終了しなくてメモリ上に
  残る場合や、IISが落ちる原因にもなりましたし〜
  またExcelのライセンスの都合もありましたので。

  参考までに。

以上。
引用返信 編集キー/
■31091 / inTopicNo.3)  Re[2]: ASPでEXCEL出力
□投稿者/ オショウ (74回)-(2009/01/15(Thu) 10:40:05)
補足
IISで使用されるので・・・

ttp://www.adv.co.jp/products/product_ExcelCreator3_limit.htm

Ver3.0 のActiveX版を購入する必要がありますし、サーバーライセンスも
.NET版には、5.0にはこのActiveX添付されてますが・・・どちらを購入す
るかわご判断下さい。

因みに、こういうものもあります。

SpreadSheetGear 2008
ttp://www.xlsoft.co.jp/jp/products/SSG/index.html

こちらは、.NET版専用ですが、COMとして使える・・・と言う記述があり
ますが、メーカーに確認する必要あると思います。

値段は・・・双方とも似たような値段になるようですネ〜

以上。

引用返信 編集キー/
■31094 / inTopicNo.4)  Re[1]: ASPでEXCEL出力
□投稿者/ Mr.T (304回)-(2009/01/15(Thu) 10:55:55)
Mr.Tです。

クライアント側でExcelとして認識させているだけの話なので、CSSで位置指定とか
Excelに通じないのではないかと思います。

ローカルのExcel側でHTMLの記載内容を制御しているわけですから、
Excel上でHTMLファイルを表示させる内容くらいには表示できるくらいには記述できるとは思います。

なので、希望する表示内容をローカルのHTMLファイルとして記載して、そのソース内容をresponse.write
してあげればできるかもしれません。
#が、試してないので、あてずっぽうですが。


No31085 (青雉 さん) に返信
> こんにちわ。
>
> ASPにて画面のEXCEL出力について分からず困っております。
>
> 背景画像を設定して背景画像に合わせた場所にCSSと<DIV>タグで配置を決めたテキストボックス等が
> 設定してある画面をそのままEXCEL出力したいと思っています。
>
> 出力については色々調べた結果、以下のコードで出力はできたのですが
> 出力したEXCELを開いてみると下の方にテキストボックス等がひとまとめのように
> 固まっていました。。。
>
> response.ContentType = "application/vnd.ms-excel"
> response.write "<html>"
> response.write "<meta http-equiv=""Content-Type"" content=""text/html; charset=Shift_JIS"">"
> response.write "</table>"
> response.write "</html>"
>
> CSSと<DIV>タグをresponse.writeで書いてみましたが変化ありませんでしたので
> どの様に書けば希望の出力ができるかわかりません。
>
> 他にいい方法があれば合わせて教えて下さい。
>
> 皆様よりご教示頂きたいと存じます。
>
> どうぞよろしくお願い致します。
>
引用返信 編集キー/
■31102 / inTopicNo.5)  Re[3]: ASPでEXCEL出力
□投稿者/ 青雉 (3回)-(2009/01/15(Thu) 12:51:35)
No31091 (オショウ さん) に返信

オショウさま

ありがとうございます。

「ExcelCreator」っていうのがあるんですね。

でもソフトの購入は無理なので現在の環境でできる
範囲でご教示頂ければ幸いです。


引用返信 編集キー/
■31103 / inTopicNo.6)  Re[2]: ASPでEXCEL出力
□投稿者/ 青雉 (4回)-(2009/01/15(Thu) 13:01:13)
No31094 (Mr.T さん) に返信

Mr.Tさま

ありがとうございます。

> クライアント側でExcelとして認識させているだけの話なので、CSSで位置指定とか
> Excelに通じないのではないかと思います。
やっぱりそうなんですか。。。

> ローカルのExcel側でHTMLの記載内容を制御しているわけですから、
> Excel上でHTMLファイルを表示させる内容くらいには表示できるくらいには記述できるとは思います。
>
> なので、希望する表示内容をローカルのHTMLファイルとして記載して、そのソース内容をresponse.write
> してあげればできるかもしれません。
> #が、試してないので、あてずっぽうですが。

response.ContentType = "application/vnd.ms-excel"
response.write "<html>"
response.write "<meta http-equiv=""Content-Type"" content=""text/html; charset=Shift_JIS"">"
response.write "<syle type=text/css>
response.write "<!--"
response.write "<#apDiv1 {"
response.write "position:absolute;"
response.write "width:523px;"
response.write "height:30px;"
response.write "z-index:1;"
response.write "left: 409px;"
response.write "top: 140px;"
response.write "}"
response.write "-->
response.write "</style>
response.write "<div id=apDiv1>
response.write "<textarea name=after cols=53 rows=7><%= safter %>"
response.write "</textarea>"
response.write "</Div>"
response.write "</table>"
response.write "</html>"

と記載してみましたが変わりませんでした。
<%= %>の部分もこの記載ではダメなようです。

お手数ですが再度、ご教示下さい。
引用返信 編集キー/
■31118 / inTopicNo.7)  Re[3]: ASPでEXCEL出力
□投稿者/ Mr.T (305回)-(2009/01/15(Thu) 14:46:21)
もう一度書きますが、表示させたい内容のHTML(Response.writeで実際に出力される内容)を
ローカルファイルにして、それがきちんとExcelで表示できるか、確認されました?


<html>
<style>
.sample{
	font-size:20pt;
}
</style>
<body>
	<input type="button" class="sample" value="hoge">
</body>
</html>

こちらでこんな単純なHTMLをExcelで表示させようとしましたが、表示されませんでした。
つまり、こんなタグではExcelではレンダリングされないって、ことです。
でも、ブラウザでみればきちんと意図した形になりますね。

Excelで新規作成したシートをhtmlとして保存して中身を見ると、かなり独自のコードが
ぐちゃぐちゃと書かれています。おそらくこの内容を踏襲したら、いけるかもしれませんが、
できないかもしれません。


>response.write "<textarea name=after cols=53 rows=7><%= safter %>"

気持ちはわかりますが、これは<%= safter %>という文字列を表示するだけです。

response.write "<textarea name=after cols=53 rows=7>" & safter

こうでしょうね。



■No31103 (青雉 さん) に返信
> ■No31094 (Mr.T さん) に返信
> 
> Mr.Tさま
> 
> ありがとうございます。
> 
>>クライアント側でExcelとして認識させているだけの話なので、CSSで位置指定とか
>>Excelに通じないのではないかと思います。
> やっぱりそうなんですか。。。
> 
>>ローカルのExcel側でHTMLの記載内容を制御しているわけですから、
>>Excel上でHTMLファイルを表示させる内容くらいには表示できるくらいには記述できるとは思います。
>>
>>なので、希望する表示内容をローカルのHTMLファイルとして記載して、そのソース内容をresponse.write
>>してあげればできるかもしれません。
>>#が、試してないので、あてずっぽうですが。
> 
> response.ContentType = "application/vnd.ms-excel"
> response.write "<html>"
> response.write "<meta http-equiv=""Content-Type"" content=""text/html; charset=Shift_JIS"">"
> response.write "<syle type=text/css>
> response.write "<!--"
> response.write "<#apDiv1 {"
> response.write "position:absolute;"
> response.write "width:523px;"
> response.write "height:30px;"
> response.write "z-index:1;"
> response.write "left: 409px;"
> response.write "top: 140px;"
> response.write "}"
> response.write "-->
> response.write "</style>
> response.write "<div id=apDiv1>
> response.write "<textarea name=after cols=53 rows=7><%= safter %>"
> response.write "</textarea>"
> response.write "</Div>"
> response.write "</table>"
> response.write "</html>"
> 
> と記載してみましたが変わりませんでした。
> <%= %>の部分もこの記載ではダメなようです。
> 
> お手数ですが再度、ご教示下さい。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -