【发布时间】:2020-12-14 21:51:45
【问题描述】:
错误:无效的对象名称“Tabelle1$”
我试图将 Tabelle1 引用为工作表。 由于我是 vba 的新手,我不明白为什么脚本无法识别它,或者我必须做什么才能做到。
感谢您的帮助。
Sub WriteDataIntoSQLTable()
Dim cn As Object
Dim strQuery As String
Set cn = CreateObject("ADODB.Connection")
strQuery = "[dbo].[MyTable]"
With cn
.Provider = "sqloledb"
.ConnectionString = "Data Source=myserver;Initial Catalog=mydatabase;Integrated Security=SSPI;"
.Open
End With
s = "INSERT INTO [ODBC;Driver=SQLOLEDB;Data Source=myserver;Initial Catalog=mydatabase;Integrated Security=SSPI;Trusted_Connection=Yes].strQuery( ldf_nr,datum, abteilung_na, positions_nr, positions_na, ma_nr, ma_na, ma_plan_beginn, ma_plan_ende, ma_plan_pause, ma_plan_dauer_netto ) " _
& "SELECT a.Col1, a.Col2, a.Col3, a.Col4, a.Col5, a.Col6, a.Col7, a.Col8, a.Col9, a.Col10, a.Col11 " _
& "FROM [Tabelle1$] as a" _
& "LEFT JOIN [ODBC;Driver=SQLOLEDB;Data Source=myserver;Initial Catalog=mydatabase;Integrated Security=SSPI;Trusted_Connection=Yes].strQuery as b ON a.Col1 = b.[ldf_nr]" _
& "WHERE b.[ldf_nr] Is Null"
cn.Execute s
cn.Close
Set cn = Nothing
End Sub
【问题讨论】:
-
如果你的表名是
Tabelle1,为什么还要写Tabelle1$? -
对不起,工作表名称是 Tabelle1$,而不是 Tabelle1。
-
我认为“$”是一个无效字符,所以请删除它(至少它似乎是我的语言)
-
我改变了它,但不幸的是它对我没有用..
-
您是否仍然收到带有新名称的“无效对象名称...”
标签: sql excel vba import-from-excel data-import