Ik heb een probleem met een stukje code dat ik aan het maken ben.
Ik heb een tabel, waarin gegevens zitten die ik via een import erin heb. Die gegevens wil ik nu op de juiste plaats in een andere tabel krijgen.
Ik zit al een paar dagen te puzzelen aan wat code, maar vooraleer ik ze echt kan testen of ze wel of niet werkt (er kunnen dus nog fouten inzitten
), moet ik ze eerst aan het starten krijgen. Ik krijg namelijk altijd een melding wanneer ik ze wil starten, dat er een Else zonder If is. En dan highlight hij het stukje dat ik nu in het rood gezet heb. Maar (in mijn bedoeling toch), hoort die Else gewoon bij die if die er ietsje boven staat, namelijk "If .NoMatch Then". Kan iemand eens kijken waar de fout in mijn code (of mijn logica) zit?
Ik heb een tabel, waarin gegevens zitten die ik via een import erin heb. Die gegevens wil ik nu op de juiste plaats in een andere tabel krijgen.
Ik zit al een paar dagen te puzzelen aan wat code, maar vooraleer ik ze echt kan testen of ze wel of niet werkt (er kunnen dus nog fouten inzitten

Code:
Private Sub Knop20_Click()
Dim getresult As Variant
Dim strCriteria As String
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("SELECT * FROM importfile2")
Dim rs2 As DAO.Recordset
Set rs2 = CurrentDb.OpenRecordset("SELECT * FROM opvang-imptmp")
'Check to see if the recordset actually contains rows
If Not (rs.EOF And rs.BOF) Then
rs.MoveFirst 'Unnecessary in this case, but still a good habit
Do Until rs.EOF = True
MsgBox rs!veld6
If IsNull(DLookup("[KindID]", "Kind", "[FP_id mama] = '" & rs!veld6 & "'")) Then
MsgBox "No matches for mama... looking in papa"
If IsNull(DLookup("[KindID]", "Kind", "[FP_id papa] = '" & rs!veld6 & "'")) Then
MsgBox "No matches, nergens nie"
Else
getresult = DLookup("[KindID]", "Kind", "[FP_id papa] = '" & rs!veld6 & "'")
MsgBox getresult
End If
Else
getresult = DLookup("[KindID]", "Kind", "[FP_id mama] = '" & rs!veld6 & "'")
MsgBox getresult
End If
'------------------------------------------------------------------------
'kijken of de record al bestaat en dan aanmaken of aanvullen
'------------------------------------------------------------------------
strCriteria = " [Kind] = " & getresult
'rs.FindFirst strCriteria
With rs2
.FindFirst strCriteria
If .NoMatch Then
'kijken of het beginuur is
If rs!veld3 <= #11:59:59 AM# Then
'het is beginuur. maar is het veld leeg?
.AddNew
.Fields("Kind") = getresult
.Fields("Datum") = rs!veld2
.Fields("Beginuur") = rs!veld3
.Update
[COLOR="#FF0000"] Else[/COLOR]
'blijkbaar is het veld het einduur
.AddNew
.Fields("Kind") = getresult
.Fields("Datum") = rs!veld2
.Fields("Einduur") = rs!veld3
.Update
Else
If rs!veld3 <= #11:59:59 AM# Then
If .Fields("Beginuur") = "" Then
.Edit
.Fields("Beginuur") = rs!veld3
.Update
End If
Else
If .Fields("Einduur") = "" Then
.Edit
.Fields("Einduur") = rs!veld3
.Update
End If
End If
End If
End With
'--------------------------------------------------------------------------
'naar de volgende record
rs.MoveNext
Loop
Else
MsgBox "There are no records"
End If
MsgBox "Finished looping through records"
rs.Close 'Close the recordset
Set rs = Nothing 'Clean up
End Sub