- PR -

DataTableの内容を.xlsファイルにしたい。

1
投稿者投稿内容
kimeira
会議室デビュー日: 2007/04/21
投稿数: 2
投稿日時: 2007-04-21 23:13
よろしくお願いします。
VB2005&Access2000でWinアプリを作成しています。
表題のとおり、DataTableの内容を.xlsファイルにしたいと思い、
色々と検索しているうちにこちらにたどり着きました。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=10298&forum=7
にとても良いサンプルがありましたので、利用させていただいたのですが、
DataTable内に+Chr(10)の改行があるのですが、.xlsファイルにすると改行されずに
表示されます。
どのようにすればDataTableどおりに改行表示されるのか知りくて投稿しました。
プログラミングの勉強を始めて日が浅く、Winアプリのことも一部分しか
理解できていない上に、Webアプリの知識がなく、大変お恥ずかしいのですが
よろしくお願いします。
DataTableからDataGridにバインドしている時に、改行が無効になっているのか、
DataGridから.xlsファイルに出力している時に改行が無効になっているのか、
そもそも、.xlsファイルにはできないのかもよかったら教えてください。

下記に現在のコードを書きます。

Dim sql As String
sql = "SELECT 出勤表.隊員コード,出勤表.氏名 " _
sql &= " (出勤表.稼働日=#{0:yyyy/MM/dd}#,出勤表.勤務コード&+Chr(10)&出勤表.残業時間,'')"
sql &= " FROM 出勤表"

Dim dbadpt As New OleDb.OleDbDataAdapter(sql, dbcon)
Dim ds As New DataSet
dbadpt.Fill(ds)

Dim dg As New System.Web.UI.WebControls.DataGrid()
dg.DataSource = ds.Tables(0)
dg.DataBind()
Dim sw As New System.IO.StreamWriter _
("C:\出勤表.xls", False, System.Text.Encoding. _
GetEncoding("Shift_JIS"))
Dim hw As New System.Web.UI.HtmlTextWriter(sw)
dg.RenderControl(hw)
sw.Close()




まさる
ベテラン
会議室デビュー日: 2006/12/21
投稿数: 59
お住まい・勤務地: 越後の中ほど
投稿日時: 2007-04-22 09:55
DataTableの該当データの改行コードを「<br>」に置換してやればうまくいくかもしれません。
kimeira
会議室デビュー日: 2007/04/21
投稿数: 2
投稿日時: 2007-04-22 14:23
まさるさま、返信ありがとうございました。
DataTableの+Chr(10)を<br>に置き換えたらすんなり改行表示できました。
とても悩んでいたのでスッキリしました。
ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)