Ik heb een subformulier gemaakt met allemaal onafhankelijke velden welke moeten worden weggeschreven in een tabel Ingrepen zodra ik op opslaan klik. Ben nu al een tijd aan het klooien en blijf steeds hangen op 1 fout, nl.: “Fout -2147352571 (80020005) tijdens uitvoering: Type komt niet overeen. Heb met een messagebox eens gekeken wat voor type er gedefinieerd staat = 8 = string. Moet toch goed gaan. Loopt iedere keer als eerste vast op het veld ”mm" vervolgens op de drie selectievakjes. De datatype van mm, duur ischaemie en duur ingreep zijn in de tabel waar de data in wordt weggeschreven alledrie ingesteld als numeriek (lange integer), die van de selektievakjes als ja/nee en die van de overige velden uit het script (va mm) als tekst (met veldlengte = 50 en nullwaarde is toegestaan).
Soms doorloopt ie het script wel normaal (afhankelijk van de ingevoerde data). Ik ben een beginnend VBA'er, kom er zelf helaas niet uit. Kon het in eerdere onderwerpen ook niet terug vinden. Ziet iemand de fout?
Private Sub Knop61_Click()
PatientID = Forms!!
Set dbs = CurrentProject.Connection
Set rstOperatie = New ADODB.Recordset
rstOperatie.Open Source:=“ingrepen”, _
ActiveConnection:=dbs, _
CursorType:=adOpenKeyset, _
LockType:=adLockOptimistic, _
Options:=adCmdTableDirect
rstOperatie.AddNew
rstOperatie(“patiënt_id”) = PatientID
rstOperatie(“datum”) = Tekst1078.Value
rstOperatie(“prim_rev”) = Keuzelijst_met_invoervak1097.Value
rstOperatie(“omschrijving”) = Keuzelijst_met_invoervak36.Value
rstOperatie(“specificatie”) = Keuzelijst_met_invoervak1082.Value
rstOperatie(“zijde”) = Keuzelijst_met_invoervak1087.Value
rstOperatie(“mm”) = Tekst65.Value
rstOperatie(“incisies”) = Keuzelijst_met_invoervak9.Value
If Not IsNull(Selectievakje14.Value) Then
rstOperatie(“overcorrectie”) = Selectievakje14.Value
End If
If Not IsNull(Selectievakje21.Value) Then
rstOperatie(“massetertranspositie”) = Selectievakje21.Value
End If
If Not IsNull(Selectievakje23.Value) Then
rstOperatie(“digastricustranspositie”) = Selectievakje23.Value
End If
rstOperatie(“transpositie_tempi”) = Keuzelijst_met_invoervak43.Value
rstOperatie(“acceptorvaten”) = Keuzelijst_met_invoervak32.Value
rstOperatie(“duur_ischaemie”) = Tekst38.Value
rstOperatie(“duur_ingreep”) = Tekst40.Value
rstOperatie.Update
rstOperatie.Close
Set rstOperatie = Nothing
MsgBox (“Ingreep is ingevoerd”)
dbs.Close
Set dbs = Nothing
End Sub