1

特定のデータをExcelからデータグリッドにインポートしようとしており、以下のクエリを使用してすべてのExcelデータをデータグリッドにインポートできます

[Allinone$] から *を選択

以下のクエリも作業ファイル

[Allinone$] からステータスを選択

しかし、以下のクエリは機能しません

[Allinone$] から part.desc を選択

そして私のコードは以下です

Try
         Dim filename As String
         Dim ofd As New OpenFileDialog
         ofd.Title = "Please select the excel which you want to import"
         If ofd.ShowDialog = DialogResult.OK Then
             filename = ofd.FileName
             Dim strin As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & filename & ";Extended Properties=""Excel 12.0;HDR=YES"";"
             Dim con As OleDbConnection = New OleDbConnection(strin)
             If con.State = ConnectionState.Closed Then
                 con.Open()
                 Dim command As OleDbCommand = New OleDbCommand()
                 command.CommandText = "Select status from [Allinone$]"
                 command.Connection = con
                 Dim adapter As OleDbDataAdapter = New OleDbDataAdapter()
                 adapter.SelectCommand = command
                 Dim dt As New DataSet
                 adapter.Fill(dt, "AllTickets")
                 DataGridView1.DataSource = dt.Tables(0)
             End If
         Else
             MsgBox("Havn't selected the file,Form Gonna end now")
             Exit Sub
         End If
 Catch ex As Exception
     MsgBox(ex.ToString)
 End Try

ヘッダーの .(ドット) に問題があることを願っています..それを修正する方法はありますか..

4

1 に答える 1

2

とはpartdescですか?

列のヘッダーが である場合part.descは、特殊文字が含まれているため、角括弧で囲む必要があります。

これを試して:

Select [part#desc] from [Allinone$]

編集:何らかの理由で、OLEDB とバインドするときに Excel がヘッダーのドットを好きではありません。クエリのドットを # に置き換えます。

于 2013-09-16T08:32:54.357 に答える