dポイントプレゼントキャンペーン実施中!

ASPファイルで表示したデータをEXCELファイルに
はきだす、プログラムを作成しました。

はきだす、文字列が長いと、セル内に「####」と
いう文字が表示されます。 この現象を回避する
ために、EXCELファイルを作成し、データをはきだ
す時に、セルのプロパティ(幅)を設定したいです。

このような事は、可能なのでしょうか?また、可能ならば
方法をご教授願います。 よろしくお願いします。

A 回答 (3件)

例えば、先に書いたSampleがExcel.aspだったとして



ダウンロード用のページに
下記のようにリンクタグを入れれば
ダウンロード出来ます。

<A HREF="Excel.asp">Down load file</A>
    • good
    • 0

補足されているソースからみるとCSV形式ですね。


CSV形式だと無理です。

Excel97sr1以降であればHtml形式でも読み込めますので
Tableとしてはき出すという手もあります。
Nowrapを付ければセル幅があうかと。
style sheetも使えますのでセル毎に色の設定も出来ます。

以下Sampleです
------------------------------------------------
strSendText = "<html xmlns:x=""urn:schemas-microsoft-com:office:excel"">"
strSendText = strSendText & "<head>"
strSendText = strSendText & "<!--[if gte mso 9]><xml><x:ExcelWorkbook>"
strSendText = strSendText & "<x:ExcelWorksheets>"
strSendText = strSendText & " <x:ExcelWorksheet>"
strSendText = strSendText & " <x:Name>Sheet Name</x:Name>"
strSendText = strSendText & " <x:WorksheetOptions>" '<x:DoNotDisplayGridlines/>
strSendText = strSendText & " <x:Selected/>"
strSendText = strSendText & " <x:FrozenNoSplit/>"
strSendText = strSendText & " <x:SplitHorizontal>1</x:SplitHorizontal>"
strSendText = strSendText & " <x:TopRowBottomPane>1</x:TopRowBottomPane>"
strSendText = strSendText & " </x:WorksheetOptions>"
strSendText = strSendText & " </x:ExcelWorksheet>"
strSendText = strSendText & "</x:ExcelWorksheets></x:ExcelWorkbook>"
strSendText = strSendText & "</xml><![endif]--></head>"
strSendText = strSendText & "<META http-equiv=""Content-type"" content=""text/html; charset=SHIFT_JIS"">"
strSendText = strSendText & "<body>"

With Response
.ContentType = "text/plain"
.AddHeader "Content-Disposition", "attachment;filename=test.xls"
.Write strSendText
.Write "<TABLE>"
.Write "<THEAD><TR><TD>No.</TD><TD>起票日</TD><TD>名前</TD></TR></THEAD>"
.Write "</TABLE>"
.Write "</body></html>"
.End
end With

------------------------------------------------

この回答への補足

みなさま、色々なご回答ありがとうございます。

私も、テーブルを作り「htmlファイル」をエクセル開く
方法が現実的な解決策だと思います。

だが、クライアントPCにそのファイルをダウンロード
させたいのです。色々調べたのですが、htmlファイルを
ダウンロードする方法を発見できません。 ASPを使って
います。 htmlファイルをダウンロードする方法を教えて下さい。 おねがいします。 

補足日時:2003/05/13 15:25
    • good
    • 0

CreateObjcet("Excel.Application") 経由で


xlsファイルを作成しているならVBAと同じく

.ColumnWidth = 幅
.EntireColumn.AutoFit

あたりで設定可能です。

この回答への補足

ご回答ありがとうございます。 以下のステート
メントで行っております。

この場合どの様にしたら良いのでしょうか?

Response.ContentType="application/vnd.ms-excel"
Response.AddHeader "Content-Disposition" , " attachment; filename= test.xls"

Response.Write "No." & vbtab
Response.Write "起票日" & vbtab
Response.Write "名前" & vbNewLine

補足日時:2003/04/25 10:55
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!