편집이다 : 나는 같은 코드와 다른 문제를 가지고 변경는 MS 액세스
2 편집 : 내가 만든
문제를 casuing 것 같다 추가 추가 코드 여러 외부 소스의 데이터를 집계하여 결과를 새로운 테이블에 기록하는 액세스의 VBA 프로그램. 이상적으로 프로그램을 실행할 때 현재 테이블에있는 모든 데이터를 지우고 새 데이터로 바꾸고 싶습니다. 나는 현재 현재 참조를 위해 다음 나의 새로운 데이터 여기
를 작성 ... 테이블에있는 코드의 모든 데이터를한다 삭제하고Function getTestFixtures(FixtureName As String) As Recordset
Dim db As Database
Set db = OpenDatabase(GetDBPath & "TestFixtures.xlsx", False, False, "Excel 12.0;HDR=Yes;")
If db Is Nothing Then
MsgBox "Can't find the file!", vbExclamation, ThisWorkbook.Name
Exit Function
End If
Set getTestFixtures = db.OpenRecordset("Select * from [" & FixtureName & "$]")
End Function
위에서 만든 레코드 수정 및 출력 데이터에 배치됩니다
사전이이 함수에 전달됩니다.
Sub Write_OTDC_Data(POlist As Dictionary)
Dim Rst As Recordset
DoCmd.SetWarnings False
DoCmd.runsql "Delete * from [OTDC Results]"
DoCmd.SetWarnings True
Set Rst = CurrentDb.OpenRecordset("OTDC Results")
With Rst
For Each key In POlist.Keys
.AddNew
For i = 0 To 9
.Fields(i).value = POlist(key)(i)
Next
.Update
Next
.Close
End With
End Sub
내 문제는 위의 두 가지 작업을 모두 실행 한 후에 아무 것도 변경하지 않으면 다음과 같은 오류가 발생합니다.
고립 중 하나를 실행하면 오류를 생성하지 않습니다.
테이블을 삭제하지 않고 삭제 쿼리를 실행하지 않으려는 이유가 있습니까? – Fionnuala
@Remou 아니요 .... 중요한 위반 사항으로부터 업로드 할 데이터의 데이터 손실 문제가 있습니다. 간단한 픽스이기 때문에 시도해 보겠습니다. – Pynner
데이터 업로드 테이블의 키가 좋은 생각이라고 생각하지 않습니다. 느려지는 것처럼 느려지고, 발견 한 것처럼 귀찮은 일이 될 수 있습니다. 열쇠를 내버려 둘 수 없습니까? – Fionnuala