Access-o-Mania

Access-Forum => Tabelle/Abfrage => Thema gestartet von: Accessoraner am Februar 09, 2018, 21:14:31

Titel: Formular - Werteübergabe von Feld zu Feld
Beitrag von: Accessoraner am Februar 09, 2018, 21:14:31
Hallo zusammen,
ich habe wieder ein Problem und bitte um Hilfe.

Überblick: Es gibt zwei Formulare, ein erstes als Übersicht, ein zweites für Details.

Ausgehend von einem Textfeld im Detailbereich des ersten Formulars wird die Stammnummer (primary key) in das zweite Formular per Doppelklick übertragen. Dies funktioniert problemlos. In diesem zweiten Formular sollen aber auch andere Stammnummer in dieses Feld eingetragen und abgefragt werden können.

Detail: (1. Formular) Doppelklick auf gebundenes Textfeld im Detailbereich "txt_Stammnummer"  (Schlüssel) ruft das 2. Formular "frm_standard_dklick" auf und übergibt den Inhalt aus "txt_Stammnummer"   an das gebundene Textfeld "unt_Stammnummer_ID " im Detailbereich des 2. Formulars

<<< Private Sub txt_Stammnummer_DblClick(Cancel As Integer)
DoCmd.OpenForm "frm_standard_dklick", , , "unt_Stammnummer_ID =" & Me.txt_Stammnummer
End Sub   >>>

im 2. Formular sollen in einem ungebundenen Feld andere weitere Stammnummern eingegeben werden können, die am besten nach "Aktualisierung"  in das bekannte Feld "unt_Stammnummer_ID" übertragen werden und die Inhalte entsprechend der neuen Stammnummer im Formular angezeigt werden sollen.

Probiert hätte ich: Eingabefeld ist "txt_stammnummer2"

<<< Private Sub txt_stammnummer2_AfterUpdate()
Me!unt_Stammnummer_ID.Value = Me!txt_stammnummer2.Value
End Sub >>>

Fehlermeldung: "Sie können diesem Objekt keinen Wert zuweisen"
Fragen: Ist obige Abfrage möglich, bzw. wie müsste hierzu der Code lauten?
Ich hoffe, ich habe mein Problem verständlich formuliert und hoffe auf eure Hilfe

Es grüßt der Accessoraner
Titel: Re: Formular - Werteübergabe von Feld zu Feld
Beitrag von: DF6GL am Februar 10, 2018, 10:09:41
Hallo,

1)  Du "übergibst" keinen Wert (Stammnummer) aus dem 1. Formular in das zweite... Das zweite Form wird geöffnet und dann mit der Stammnummer gefiltert, so dass es den DS mit dieser Stammnummer anzeigt.

2) Es ist unklar, was Du mit " sollen in einem ungebundenen Feld andere weitere Stammnummern eingegeben werden können" meinst.

Vermutlich willst Du erreichen, dass nach Eingabe einer Stammnummer in ein (ungebundenes) Textfeld ("txtStaNr") der enstspr. DS angezeigt werden soll.

Dazu ist ebenfalls eine Filterung erforderlich:

Sub txtStaNr_Afterupdate()
Me.Filter = "unt_Stammnummer_ID =" & Me!txtStaNr
Me.FilterOn = True
End Sub


Vermutlich ist aber eine Lösung mit einem Kombifeld komfortabler.  Das Kombifeld bezieht seine Listenfeld-Einträge aus einer Tabelle mit allen vorkommenden Stammnummern und filtert das Form nach Auswahl einer solchen entspr.:

Sub cmbStaNr_Afterupdate()
Me.Filter = "unt_Stammnummer_ID =" & Me!cmbStaNr
Me.FilterOn = True
End Sub

Die Frage bleibt aber, warum ein ID-Wert eingegeben werden soll/muss und nicht ein aussagekräftigeres Feld Verwendung findet.
Titel: Re: Formular - Werteübergabe von Feld zu Feld
Beitrag von: Accessoraner am Februar 10, 2018, 17:22:07
Hallo Franz,

das ist genau das, was ich gesucht habe. Beide Codes funktionieren tadellos, werde den ersten verwenden, da die Liste mit den Stammnummern sehrsehr lang ist.

Vielen herzlichen Dank

Accessoraner