Forum des VBA-Tutorials

Zugehöriges Formular öffnen (Access)

Allanon, Donnerstag, 02. November 2017, 14:34 (vor 19 Tagen)

Hallo Leute,

momentan bin ich noch ein ziemlicher Anfänger bei der Access Programmierung. Ich habe bis jetzt drei verschiedene Eingabeformulare erstellt. Diese enthalten Unterformulare. Dazu habe ich ein Suchformular für erstellt, welche per Abfrage die Tabelle des Unterformulares filtern kann. Als nächstes möchte ich (am Besten) per Doppelklick auf den gefiltertetn Datensatz das zugehörige Formular öffnen. Das einzige Proble hierbei ist, dass diese Tabelle in den drei unterschiedlichen Hauptformularen als Unterformular existiert. Sprich: Filter anwenden, auf Ergebnis klicken, das richtige Hauptformular aus den Dreien öffnen.
Ist sowas machbar? Oder eher zu umfangreich zu implementieren?

Viele Grüße

Zugehöriges Formular öffnen

Martin Asal, Donnerstag, 02. November 2017, 16:41 (vor 19 Tagen) @ Allanon

Hallo Allanon,

wenn aus demjenigen Datensatz, der angeklickt wird, eindeutig erkennbar ist, welches Hauptformular geöffnet werden soll, ist das auch machbar. Die Frage ist nur, wie das erkennbar ist?

Martin

Zugehöriges Formular öffnen

Allanon, Donnerstag, 02. November 2017, 21:45 (vor 18 Tagen) @ Martin Asal

Hi,
Danke für die schnelle Antwort :) Alle Einträge der Tabelle sind mit einer 1:n Verbindung verknüpft. Also eine ID des Hauptformulares ist zu mehreren Tabelleneinträgen (an der die Suche stattfindet) gebunden.

Zugehöriges Formular öffnen

Martin Asal, Freitag, 03. November 2017, 08:58 (vor 18 Tagen) @ Allanon

So ganz blicke ich zwar nicht durch, was deine Struktur betrifft, aber vielleicht hilft dir das ja weiter:

In deinen Suchformular wählst in der Ereigniseigenschaft "Beim Doppelklicken" [Ereigniseigenschaft] aus und klickst auf den "..."-Button. Damit landest du im VBA-Editor. Dort trägst du ca folgendes ein (Tipp: von Hand abtippen, nicht Copy&Paste):

Private Sub Detailbereich_DblClick(Cancel As Integer)
 
Select Case Me.MeinFeldname
    Case "1": DoCmd.OpenForm "A"
    Case "2": DoCmd.OpenForm "B"
    Case "3": DoCmd.OpenForm "C"
End Select
 
End Sub

Anstelle von "MeinFeldname" muss natürlich der Name des Feldes stehen, anhand dessen ausgewählt wird, welches Formular geöffnet werden soll. Und anstelle von "1" usw. muss jeweils der Wert eingetragen werden, der bestimmt, welches Form geöffnet wird.

Martin

Zugehöriges Formular öffnen

Allanon, Freitag, 03. November 2017, 15:00 (vor 18 Tagen) @ Martin Asal

Das klingt nach einer plausiblen Lösung. Danke! Da ich als Werkstudent tätig bin, werde ich erst am Dienstag testen können. Kann man mit deinem Code direkt zum zugehörigen Datensatz springen? Als Beispiel: Das suchformular sucht den Eintrag xy. Der Eintrag ist im Formular A unter dem Datensatz Z enthalten. Nach dem Doppelklick-Ergeignis wird Formular A mit Datensatz Z geöffnet.

Zugehöriges Formular öffnen

Martin Asal, Sonntag, 05. November 2017, 21:01 (vor 15 Tagen) @ Allanon

Kann man mit deinem Code direkt zum zugehörigen Datensatz springen?

da fehlt dann noch ein DoCmd.GotoRecord

Martin

Zugehöriges Formular öffnen

Allanon, Dienstag, 07. November 2017, 11:53 (vor 14 Tagen) @ Martin Asal

Hey,

hat wunderbar geklappt! Ich habe aber mit DAO.Recordset gearbeitet.
Danke für die Hilfe :)

RSS-Feed dieser Diskussion
powered by my little forum