Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Unterformular filtern





Frage

Ein Schritt vor und schon wieder stop. Rufe ein Formular von verschiedenen anderen Formularen auf. Dabei soll das aufgerufene Formular unterschiedlich gefiltert werden. Das aufzurufende Formular heisst 'Ansprechpartner', darin befinden sich 2 Endlos-Unterformulare 'Ufo_Ansprechpartner' und 'Ufo_Memo'. Wenn 'Ansprechpartner aufgerufen wird, soll das Unterformular 'Ufo_Ansprechpartner' mit Steuerelement 'VB_ID' gefiltert werden (>0). Habe schon beim DoCmd.OpenForm verschiedene Schreibweisen probiert, bisher ohne Erfolg. Bin für jede Hilfe dankbar.

Antwort 1 von Marie

wie wär's mit Ufo_Ansprechpartner.RecordSource?? Du schreibst ja nicht genau was Du probiert hast, dann kann Dir auch niemand sagen was Du falsch machst. Schreib doch mal genauer.

Gruß marie

Antwort 2 von Miky

Form Ansprechpartner möchte ich mehrfach benutzen. Da Ufo_Ansprechpartner und Ufo_Memo Endlosformulare sind, habe ich beide auf ein leeres Blatt gezogen (Ansprechpartner) und miteinander über Ansprechpartner_ID verknüpft. Im Nachhinein habe ich für das Hauptformular Ansprechpartner auch als Datenquelle die Tabelle 'Ansprechpartner' gesetzt (müsste aber auch ohne gehen, oder). Im Ufo_Ansprechpartner gibt es Kunden_ID, VB_ID, Werk_ID ...... die zum Filtern dienen je nach dem von welchem Formular aus 'Ansprechpartner' aufgerufen wird. Habe dafür Schalter auf z.B. Formular Kunde mit:

stDocName = "Ansprechpartner"
stLinkCriteria = "[Kunden_ID]=" & Me![Kunden_ID]
DoCmd.OpenForm stDocName, , , stLinkCriteria
Ufo_Ansprechpartner.RecordSource
Forms("Ufo_Ansprechpartner").filter = "VB_ID>0"
Forms("Ufo_Ansprechpartner").FilterOn = True

Bekomme Fehler mit 'Objekt erforderlich' und zeigt alle DS an (keine Filterung). Habe da so einiges noch nicht verstanden. Brauche daher ein Beispiel wie ein Hauptformular geöffnet wird und eine Filterung in einem der Ufo's ausgeführt wird. Vielen Dank für jede Hilfe.