[OK]まず、ExcelスプレッドシートへのOleDB接続を開きます。
Imports System.Data
Imports System.Data.Odbc
Imports System.Data.OleDb
Dim DSN As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MYEXCELFILE.XLS;Extended Properties=""Excel 8.0;HDR=YES;IMEX=1;MAXSCANROWS=12"""
Dim OleDbConn As New OleDbConnection(DSN)
OleDbConn.Open()
Dim tables As System.Data.DataTable = OleDbConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, Nothing)
Dim tableName As String
Dim canBeImported As Boolean
For Each dr As System.Data.DataRow In tables.rows
tableName = dr.Item("TABLE_NAME").ToString
canBeImported = (tableName.IndexOfAny(New Char() {" ","[","]","'","""","`",";"}) < 0)
Next
OleDbConn.Close()
Excelファイル内のテーブル(表=シートまたは名前付き範囲)のすべてをこの意志ループと名を取得:
次に、以下の(VB.NETに示されている)のようなものを使用それぞれの。さらに、ODBCを介してアクセスできない文字を含むテーブルを除外します(スペースは最も一般的な問題です)。
これをコンパイルするには、どの名前空間をインポートする必要がありますか? – user66061
これらはあなたをカバーする必要があります。 System.Data System.Data.Odbc System.Data.OleDb – richardtallent
また、実際のスプレッドシートファイル名を追加するにはどうすればいいですか? – user66061