OLEDB を使用して Excel データを読み込む方法について説明します。
Excel データを読み込む
1. 以下のデータを D:\test.xls の Sheet1 シートに作成します。
A 列 | B 列 |
---|---|
果物 | 価格 |
バナナ | 90 |
リンゴ | 120 |
メロン | 550 |
2. 次のコードにより、データを読み込みます。
[void][System.Reflection.Assembly]::LoadWithPartialName("System.Data") [string]$cs = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\test.xlsx;Extended Properties=Excel 12.0" [System.Data.OleDb.OleDbConnection]$oCon = New-Object System.Data.OleDb.OleDbConnection($cs) [System.Data.OleDb.OleDbCommand]$oCmd = New-Object System.Data.OleDb.OleDbCommand $oCon.Open() $oCmd.Connection = $oCon $oCmd.CommandText = "SELECT * FROM [Sheet1$]" [System.Data.OleDb.OleDbDataReader]$oReader = $oCmd.ExecuteReader() while ($oReader.Read()) { $oReader["果物"] + " " + $oReader["価格"] } $oReader.Close() $oCon.Close() $oCmd.Dispose() $oCon.Dispose() Clear-Variable oCmd Clear-Variable oCon
尚、このコマンドを Windows 7 x64 上で動作させる場合は、PowerShell ISE (x86) で実行してください。