Ich muss zum ersten mal mit einem loop in VBA aus einer bestehenden Tabelle mit einem Ja/Nein-Feld ("Übernehmen") Datensätze in eine andere bestehende Tabelle schreiben und hänge fest. Vielleicht kann mir jemand weiterhelfen :)
Zu befüllende Tabelle: TeilnehmerAdressdatenT
Felder:
ID
TeilnehmerID
AdressdatenID
Diese Tabelle soll nachfolgend mit neuen Datensätzen befüllt werden
Die Datensätze stammen ebenfalls aus einer Tabelle und können durch Eingaben in ein Ja/Nein-Feld in einem Formular selektiert werden.
Formular: tmpCheckDuplikateTN_Zu_AdressdatenF
Datenquelle des Formulars: tmpCheckDuplikateTN_Zu_AdressdatenT
Das Ja/Nein-Feld heißt: "Übernehmen"
Datenfelder, die übernommen werden sollen:
TeilnehmerID
AdressdatenID
Wenn Feld ,,Übernehmen" = Ja
soll ein Datensatz in der Tabelle TeilnehmerAdressdatenT angefügt werden mit den zugehörigen Inhalten der Felder TeilnehmerID und AdressdatenID
Bestehende Code-Baustelle:
Private Sub cmdAddAdressdatenTN_Click()
Dim db As Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("???????")
Do Until rs.EOF
If me.Übernehmen.Value = True
Loop
End Sub
Hallo,
auch hier immer wieder die Frage: Wozu soll das gut sein?
Es braucht keine VBA-Schleife, wenn:
Das Ja/Nein-Feld Bestandteil der Tabelle "tmpCheckDuplikateTN_Zu_AdressdatenT" ist und das Feld mittels Formular-Eingaben bearbeitet wird.
Private Sub cmdAddAdressdatenTN_Click()
Dim db as Dao.Database
Set db = Currentdb
If Me.Dirty Then Me.Dirty = False
db.Execute "Insert into TeilnehmerAdressdatenT (TeilnehmerID, AdressdatenID) " & _
" Select T.TeilnehmerID, T.AdressdatenID From tmpCheckDuplikateTN_Zu_AdressdatenT as T Where T.Übernehmen <> 0 ", dbFailOnError
' evtl, wenn das Ja/Nein-Feld "resettet" werden soll/muss:
' db.Execute "Update tmpCheckDuplikateTN_Zu_AdressdatenT Set Übernehmen = 0", dbFailOnError
End Sub