Kombinationsfeld Bei nicht in Liste (Acc 10)

09/01/2013 - 20:19 von linux9 | Report spam
Hallo
in einem Formular soll ich Strassennamen eingeben. Von(Strasse)und Nach(Strasse).
Dazu verwende ich 2 Kombinationsfelder. Wenn eine Strasse nicht in der Liste ist, wird duch das "nicht in Liste Erreignis" ein Formular "Srassen" aufgerufen.

1.KomboBox

Private Sub cbo_SuchStrasse_von_NotInList(NewData As String, Response As Integer)
If MsgBox("Diese Strasse ist neu. Möchten Sie Die Strasse anlegen?", vbYesNo) = vbYes Then ' nachfragen, falls "ja"
Response = acDataErrContinue ' verhindert die Standardmeldung '
DoCmd.OpenForm "Strassen", , , , acFormAdd 'Eingabeformular öffnen
Forms!Strassen!txtStrasse = NewData ' eingegebenen Wert übernehmen
Forms!Strassen!txtStrasse.Requery
Else ' falls "nein" z.B. bei Tippfehler
Response = acDataErrContinue
cbo_SuchStrasse_von.Undo ' Eingabe rückgàngig machen
End If
End Sub

2. KomboBox

Private Sub cbo_SuchStrasse_nach_NotInList(NewData As String, Response As Integer)
If MsgBox("Diese Strasse ist neu. Möchten Sie Die Strasse anlegen?", vbYesNo) = vbYes Then ' nachfragen, falls "ja"

Response = acDataErrContinue ' verhindert die Standardmeldung '

DoCmd.OpenForm "Strassen", , , , acFormAdd 'Eingabeformular öffnen
Forms!Strassen!txtStrasse = NewData ' eingegebenen Wert übernehmen
Forms!Strassen!txtStrasse.Requery
Else ' falls "nein" z.B. bei Tippfehler

Response = acDataErrContinue
cbo_SuchStrasse_nach.Undo ' Eingabe rückgàngig machen

End If
End Sub


Im Formular "Strassen" Habe ich im Erreignis Beim schliessen den folgenden Code.


Private Sub Form_Close()
Forms!Formular4!cbo_SuchStrasse_von = Me!txtStrasse
Forms!Formular4!cbo_SuchStrasse_von.Requery
End Sub


Hier liegt nun das Problem. Wenn ich das Formular Strassen nun vom 2. Kombifeld aufrufe müsste der Eintrag beim schliessen ja auf das 2 Kombifeld cbo_SuchStrasse_nach verweisen.

Wie bekomme ich das hin das hier automatisch das Kombifeld steht von welchem das Formular jeweils aufgerufen wurde.
 

Lesen sie die antworten

#1 Ekkehard Böhme
09/01/2013 - 21:37 | Warnen spam
Hallo,

Hallo
in einem Formular soll ich Strassennamen eingeben.
Von(Strasse)und Nach(Strasse).
Dazu verwende ich 2 Kombinationsfelder. Wenn eine
Strasse nicht in der Liste ist, wird duch das "nicht in
Liste Erreignis" ein Formular "Srassen" aufgerufen.

1.KomboBox

Private Sub cbo_SuchStrasse_von_NotInList(NewData As
String, Response As Integer)
If MsgBox("Diese Strasse ist neu. Möchten Sie Die
Strasse anlegen?", vbYesNo) = vbYes Then ' nachfragen,
falls "ja"
Response = acDataErrContinue ' verhindert die
Standardmeldung '
DoCmd.OpenForm "Strassen", , , , acFormAdd
'Eingabeformular öffnen
Forms!Strassen!txtStrasse = NewData '
eingegebenen Wert übernehmen
Forms!Strassen!txtStrasse.Requery
Else ' falls "nein" z.B. bei Tippfehler
Response = acDataErrContinue
cbo_SuchStrasse_von.Undo ' Eingabe rückgàngig
machen
End If
End Sub

2. KomboBox

Private Sub cbo_SuchStrasse_nach_NotInList(NewData As
String, Response As Integer)
If MsgBox("Diese Strasse ist neu. Möchten Sie Die
Strasse anlegen?", vbYesNo) = vbYes Then ' nachfragen,
falls "ja"

Response = acDataErrContinue ' verhindert die
Standardmeldung '

DoCmd.OpenForm "Strassen", , , , acFormAdd
'Eingabeformular öffnen
Forms!Strassen!txtStrasse = NewData '
eingegebenen Wert übernehmen
Forms!Strassen!txtStrasse.Requery
Else ' falls "nein" z.B. bei Tippfehler

Response = acDataErrContinue
cbo_SuchStrasse_nach.Undo ' Eingabe rückgàngig
machen

End If
End Sub


Im Formular "Strassen" Habe ich im Erreignis Beim
schliessen den folgenden Code.


Private Sub Form_Close()
Forms!Formular4!cbo_SuchStrasse_von = Me!txtStrasse
Forms!Formular4!cbo_SuchStrasse_von.Requery
End Sub


Hier liegt nun das Problem. Wenn ich das Formular
Strassen nun vom 2. Kombifeld aufrufe müsste der
Eintrag beim schliessen ja auf das 2 Kombifeld
cbo_SuchStrasse_nach verweisen.

Wie bekomme ich das hin das hier automatisch das
Kombifeld steht von welchem das Formular jeweils
aufgerufen wurde.

Übergebe per OpenArgs den entsprechenden Namen des
Kombis
und àndere die Close-Ereignisprozedur so:
Forms!Formular4.Controls(Me.OpenArgs) = Me!txtStrasse
Forms!Formular4.Controls(Me.OpenArgs).Requery

hth
gruss ekkehard

Ähnliche fragen