【发布时间】:2015-08-01 04:54:47
【问题描述】:
我正在尝试在使用 Excel 前端的 Access 中构建某种班次和活动数据库。我已经设法编写 VBA 代码来导入访问表中的数据,但现在我正在寻找解决方案,以防更新表中已经存在的数据。这是我的导入代码示例:
Sub SaveData()
Dim cnt As New ADODB.Connection
Dim strCon As String
Dim strSQL As String
Dim strConBckp As String
Dim mandatoryFields As String
Dim myRange As Range
radek = Worksheets("data").Range("B4").Value + 1
sloupec = Worksheets("data").Range("B5").Value + 1
For j = 2 To sloupec
For i = 2 To radek
dat = Worksheets("Rozpis").Range("A1").Value
act = Worksheets("Rozpis").Cells(1, j).Value
jm = Worksheets("Rozpis").Cells(i, 1).Value
slt = Worksheets("Rozpis").Cells(i, j).Value
rep = Environ("UserName")
If slt <> "" Then
' Import
strCon = "Provider=Microsoft.Ace.OLEDB.12.0; Persist Security Info = False;" & _
"Data Source=C:\Users\carbolf\Desktop\PLANNER - Copy.accdb;"
strSQL = "INSERT INTO rozpis_db (Datum, Slot, Alias, Activity, Uložil) SELECT " & "'" & dat & "', '" & jm & "', '" & slt & "','" & act & "','" & rep & "'"
Set cnt = New ADODB.Connection
With cnt
.Open strCon
.Execute (strSQL)
End With
cnt.Close
Set cnt = Nothing
End If
Next
Next
End Sub
感谢您的任何建议。
【问题讨论】: