有點卡住了。我有一個excel表,可以說以下列 [Date],[Name],[PostCode],[City]從Excel定義表格中插入Excel表格Where Where子句
和一個具有相同列名稱的訪問表。
我想將excel數據表插入到訪問表中,但想要應用WHERE子句,以便它忽略訪問表中已有的日期。
我可以愉快地將所有數據插入訪問表,但不能應用WHERE子句成功地忽略現有日期。而令人討厭的是,我無法引用實際的表名正確,所以我參考了工作表(但工作正常)。
這是我到目前爲止的代碼:
Sub TestInsert()
Dim cnn As ADODB.Connection
Dim dbPath As String
Dim xlPath As String
Dim uSQL As String
dbPath = "C:\Test\TestDB.accdb"
xlPath = "C:\Test\TestXL.xlsm"
'Set Connection string
Set cnn = New Connection
cnnstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & dbPath
'Open connection to db
cnn.Open cnnstr
uSQL = "INSERT INTO tbl_ApolloBrochurewareReportTEST " _
& "SELECT * FROM [Excel 12.0;HDR=YES;DATABASE=" & xlPath & "].[Sheet1$]"
cnn.Execute uSQL
cnn.Close
End Sub
任何輸入或知識將是巨大的,謝謝你。
如果你把一個唯一索引上的日期字段,則重複的記錄將被丟棄。如果不應該有任何重複,應該有這個索引,但是日期字段很少用作唯一字段 - 日期對於這個目的是不可靠的,任何存在的時間元素都將允許這些*明顯*重複的記錄。 –