ZitatOption Compare Database
Option Explicit
Private Sub AktuellenKundenDrucken_Click()
DoCmd.OpenReport "tblKunde", acPreview, , "tblKunde.KundeID=" & Me!KundeID
End Sub
Private Sub Form_Current()
Me!UFPartner.Form!cboKurse.Requery
Me!UFPartner.Form!cboKunde1_ID.Requery
End Sub
Zitat
Private Sub PLZ_BeforeUpdate(Cancel As Integer)
Me!Ort = (DLookup("[Ort]", "tblKunde", "[PLZ] ='" & Me!PLZ & "'"))
End Sub
Private Sub Suche_AfterUpdate()
Dim rs As DAO.Recordset
Set rs = Me.RecordsetClone
rs.FindFirst "KundeID = " & Me!Suche & ""
'oder falls RechnungsNr kein Zahlenfeld ist sondern vom Typ Text:
'rs.FindFirst "RechnungsNr = '" & Me!Suche & "'"
If Not rs.NoMatch Then
Me.Bookmark = rs.Bookmark
End If
Set rs = Nothing
End Sub
Wie es hier im Doppel-zitierten Code steht funktioniert das auch mit einem Feld.
Kopiere ich und passe den Code auch auf andere Felder an.
Beispiel hier:
Private Sub BLZ_BeforeUpdate(Cancel As Integer)
Me!Bankname= (DLookup("[Bankname]", "tblKunde", "[BLZ] ='" & Me!BLZ& "'"))
End Sub
Habe ich nun beide Codes in einem Formular setzt er später, wenn ich die BLZ eingegetragen habe, in ORT den Banknamen.....
Wieso?
Und was muss ich tun?
Ziel soll werden:
Anrede = Geschlecht (funktioniert schon)
Plz = passender Ort
BLZ = passende Bank
Nachname = Konto Inhaber (kann aber auch später geändert werden)
EDIT: Habe mal die leere Kundendatenbank hinzugefügt
[Anhang gelöscht durch Administrator]
Hi,
kannst Du statt .accdb die db als .mdb (access 2003) zur Verfügung stellen?
Harald
Zitat von: bahasu am Mai 23, 2012, 19:08:35
Hi,
kannst Du statt .accdb die db als .mdb (access 2003) zur Verfügung stellen?
Harald
Leider bekomme ich dann die Fehlermeldung , dass Feature usw. dann nicht funktionieren...........
Hallo,
ZitatHabe ich nun beide Codes in einem Formular setzt er später, wenn ich die BLZ eingegetragen habe, in ORT den Banknamen.....
Da stimmen vermutlich nicht die Textfeldnamen....Überprüf die mal.
Ansonsten wäre das AfterUpdate-Ereignis besser für solche Wertzuweisungen, wobei ich mich frage , ob tatsächlich aus der Kundentabelle der Bankname ausgelesen werden soll.
Zitat von: DF6GL am Mai 23, 2012, 20:42:34
Hallo,
ZitatHabe ich nun beide Codes in einem Formular setzt er später, wenn ich die BLZ eingegetragen habe, in ORT den Banknamen.....
Da stimmen vermutlich nicht die Textfeldnamen....Überprüf die mal.
Ansonsten wäre das AfterUpdate-Ereignis besser für solche Wertzuweisungen, wobei ich mich frage , ob tatsächlich aus der Kundentabelle der Bankname ausgelesen werden soll.
Warum nicht?
Zitat
Private Sub Bankname_AfterUpdate()
Me!Ort = (DLookup("[Bankname]", "tblKunde", "[BLZ] ='" & Me!BLZ & "'"))
End Sub
bewirkt garnichts.
Hallo McBlinki,
Versuche es mal mit der Tabelle Adressen ;)
In tblKunde sind keine entsprechenden Einträge
vorhanden.
Ausserdem hat das Feld PLZ keine Datenherkunft.
Angaben zu Banken sind keine gespeichert, da
kannst Du auch nichts finden. Wobei der Code
bezügl. Bank und BLZ nicht in der DB zu finden ist.
Und ich würde auch
1. Franz' Vorschlag folgen, und die Zuweisung bei
AfterUpdate machen, da ist auch gesichert, das
.Value (Standard-Eigenschaft) den richtigen Wert
zurück liefert. BeforeUpdate verwendet man üblicher-
weise für Validitätsprüfungen; und
2. auch den Einwand bezüglich Bankname und BLZ
in der Kundentabelle zu erfassen; - die gehören besser
in eine eigene Tabelle.
hth
gruss ekkehard
P.S. Wenn's nicht zu spät wird, schau ich vielleicht
später noch mal drüber.