Vb.net 在Excel 2010中使用下划线而不是空格以及命名范围创建表
我正在使用Visual Studio 2010 Professional和Excel 2010。下面的代码创建了一个名为“Hourly_Burn_Data_By_Plant”的表,而不是“Hourly Burn Data By Plant”,并在新表的字段行上创建了一个同名的命名范围。这会在向表中添加数据时产生错误。我做错了什么Vb.net 在Excel 2010中使用下划线而不是空格以及命名范围创建表,vb.net,ado.net,oledb,Vb.net,Ado.net,Oledb,我正在使用Visual Studio 2010 Professional和Excel 2010。下面的代码创建了一个名为“Hourly_Burn_Data_By_Plant”的表,而不是“Hourly Burn Data By Plant”,并在新表的字段行上创建了一个同名的命名范围。这会在向表中添加数据时产生错误。我做错了什么 Dim ConStrTemp As String ConStrTemp = "Provider=Microsoft.ACE.OLEDB.12.0;Dat
Dim ConStrTemp As String
ConStrTemp = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & "C:\Studies\NewHourlyFuel\Book1.xlsx" & _
";Extended Properties=""Excel 12.0;HDR=Yes;""" 'Mode=ReadWrite;ReadOnly=False;"""
Dim ConnTemp As New OleDbConnection(ConStrTemp)
Globals.OpenConn(ConnTemp)
Dim ExistingTables() As String
ExistingTables = Globals.GetTableNamesFromConn(ConnTemp)
Dim i As Int16
For i = 0 To ExistingTables.GetUpperBound(0)
Debug.Print(ExistingTables(i))
Next
Dim NametoCreate As String = "Hourly Burn Data By Plant"
Dim CreateSQL As String = "Create Table [" & NametoCreate & "] ([Plant] char(50), [RDate] Date, [Period 1] float, " & _
"[Period 2] float, [Period 3] float, [Period 4] float, [Period 5] float, [Period 6] float, [Period 7] float, [Period 8] float, [Period 9] float, " & _
"[Period 10] float, [Period 11] float, [Period 12] float, [Period 13] float, [Period 14] float, [Period 15] float, [Period 16] float, [Period 17] float, " & _
"[Period 18] float, [Period 19] float, [Period 20] float, [Period 21] float, [Period 22] float, [Period 23] float, [Period 24] float, [Daily Total] float)"
Dim cmd As New OleDb.OleDbCommand(CreateSQL, ConnTemp)
Try
cmd.ExecuteNonQuery()
MsgBox("susccess")
ExistingTables = Globals.GetTableNamesFromConn(ConnTemp)
For i = 0 To ExistingTables.GetUpperBound(0)
Debug.Print(ExistingTables(i))
Next
Globals.CloseConn(ConnTemp)
Catch ex As Exception
MsgBox("Failure " & ex.Message)
Globals.CloseConn(ConnTemp)
End Try
excel中正确的创建表语法为:
CREATE TABLE `SheetName` (`ColumnName1` TYPE, `ColumnName2` TYPE)
其中TYPE=参见下面的链接
注意使用`而不是[]作为名称标识符…excel中正确的创建表语法是:
CREATE TABLE `SheetName` (`ColumnName1` TYPE, `ColumnName2` TYPE)
其中TYPE=参见下面的链接
注意使用`and not[]作为名称标识符…I treid如下:CreateSQL=“Create Table”和“&NametoCreate&”&”(第50节,RDAte Date和“&”&“&”&“&”和“Period 1”和“&”&”Float)和我得到“Create SQL中的语法错误”消息。我treid如下:CreateSQL=“Create Table”&“&NametoCreate&”&”(第Char(50)节,RDAte Date,&“&”&“Period 1”&“&”&“Float”),我得到了“createsql中的语法错误”消息。