フリーエンジニアである下っ端SEの備忘録と日記。日々是精進。 開発言語は主にC#。 開発技術が日々進化し続けている今日、取り残されまいとするも歳のせいか覚えが悪いSE。 ほったらかしですいません。

2012年02月29日

【VB.NET】Excel操作(DataTableに取込む)

表形式(リスト形式?)のエクセルのデータをデータテーブル(DataTable)に取り込むには。

PCにインストールされているExcelバージョン:Excel2003
Visual Studio 2010

例)エクセルの中身
ID  名前   内容
1   名前1  ないよう1
2   名前2  ないよう2
3   名前3  内容がないよう


Dim filePath As String = "ファイルのフルパス"

Dim Con As New OleDb.OleDbConnection
Dim Command As New OleDb.OleDbCommand()
Dim ConnectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=" & _
filePath & ";" & _
"Extended Properties=""Excel 8.0;HDR=YES;"""
Dim oDataTable1 As DataTable = New DataTable

'条件を指定してデータを取得したい場合
Dim where As String = " WHERE 内容 <> '内容がないよう'"

Try
Dim oDataAdapter As New OleDb.OleDbDataAdapter
Con.ConnectionString = ConnectionString
Command.Connection = Con

'これは、シート名が「Sheet1」のときの例。 Sheet1じゃないときはは、[Sheet1$]の「Sheet1」のところを書き換え
Command.CommandText = "SELECT * FROM [Sheet1$]" & where

oDataAdapter.SelectCommand = Command
oDataAdapter.Fill(oDataTable1)

Catch ex As Exception
'エラー処理
Finally
If Not Command Is Nothing Then
Command.Dispose()
End If
If Not Con Is Nothing Then
Con.Dispose()
End If
End Try

Return oDataTable1


データテーブルの中身
(項目名)ID 名前  内容
     1 名前1  ないよう1
     2 名前2  ないよう2

タグ :Excel.NetVB.Net

同じカテゴリー(.Net全般)の記事画像
リリースモードで実行してデバッグする
同じカテゴリー(.Net全般)の記事
 【VB.NET】csvをDataTableに取り込む (2012-02-29 12:49)
 【VB.NET】Excelファイルの操作(行の削除) (2012-02-29 12:42)
 VS2005 インストールが固まる (2010-06-21 20:36)
 リリースモードで実行してデバッグする (2009-11-07 09:00)
 【VS2008】パッケージの読み込みエラー (2009-11-05 11:20)
 ドツボにハマって (2009-11-04 14:42)

Posted by ようすけ at 12:47│Comments(2).Net全般
この記事へのコメント
良いコメントありがとうございました
Posted by คาสิโน at 2013年04月26日 15:49
パネライが最も人々の熟知した2つのシリーズに別れられるのが大家をひっくり返すのとです。しかし注意深くあなたの発見を研究して、この独立制表工場は多くの技術の研究の重点を置いてきんでているシリーズの中で行きます。パネライの最高な技術の価値と最も熟している美感の体系のを代表することができるのはずっときんでている。パネライ腕時計が採択するのは手動で機械的で、18Kバラの金は殻を表して、多く言う必要はありません。
Posted by jpsupergreat at 2013年12月06日 18:28
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。