Hallo ...
Ich habe ein Formular Namens "frm_Start". Dieses enthält 3 Unterformulare. Ein "UFO_Menü", ein "UFO_unten" und ein "UFO_oben".
Dem UFO_Menü ist ein Formular zugewiesen. Dieses enthält.. man staune... ein Menü.
Wenn ich jetzt auf einen Menüeintrag klicke, so möchte ich gern, dass das "UFO_oben" mit einem Bericht gefüllt wird. Es müsste also dort das Herkunftsobjekt geändert werden.
Ich denke es müsste so irgendwie Funktionieren: Forms!Frm_Start!UFO_oben.Herkunftsobjekt = "Bericht".. oder so.
Könnt Ihr mir kurz helfen.
Besten Dank.
Hi,
im VBA-Code brauchst du die englischen Begriffe, in diesem Fall wäre das "SourceObject".
Ich erhalte immer die Fehlermeldung Laufzeitfehler 438: "Objekt unterstützt diese Eingenschaft oder Methode nicht."
Ich versuche via Forms!frm_Start!UFO_oben.SourceObjekt = "Bericht_Vorgangsliste" den Bericht im UFO zu öffnen. Ich habe es auch schon ohne die "" versucht. Gleiches Problem.
Mir ist bei der Eingabe von me.sourceobjekt aufgefallen, dass dieser Befehl gar nicht existiert.
SourceObject ist eine Eigenschaft eines Unterformular-Steuerelements.
Bei der Zuweisung musst du den Namen des Berichts schreiben, bist du sicher dass dieser "Bericht_Vorgangsliste" heißt?
Und "UFO_oben" ist das Name des Unterformular-Steuerelements?
Anstatt über die Forms-Auflistung zu gehen und den konkreten Formularnamen des Hauptformulars angeben zu müssen, kannst du auch den relativen Bezug mithilfe der Parent-Eigenschaft wählen:
Me.Parent!UFO_oben.SourceObject
SourceObject mit "c" - wie gesagt, VBA spricht englisch.
frmStart ist das Hauptformular
UFO_oben ist der Name des Unterformular Steuerelements
in diesem UFO_oben soll der Bericht "Bericht_Vorgangsliste" angezeigt werden.
Mit dem Befehl Me.Parent!UFO_oben.SourceObject = Bericht_Vorgangsliste passiert gar nix. Das UFO bleibt leer. Gleiches passiert wenn ich über den Forms Befehl gehe.
Auch ein Me.Parent!UFO_oben.requery änderte nix.
Das UFO bleibt weiß und es kommt auch keine Fehlermeldung.
Wie gesagt, du musst den Namen des Berichts einstellen, der Name ist eine Zeichenkette vom Typ String und muss dementsprechen in Gänsefüßchen gesetzt werden.
Und nennst du deine Berichte tatsächlich "Bericht_xyz"? ???
...warum heißt "frmStart" dann nicht "Formular_Start"? ;)
Ja, der Bericht heißt tatsächlich so.. Aber ist doch egal ;) Könnte ihn auch Ber_xxx nennen. Schnuppe.
In Gänsefüßchen erhalte ich aber die Fehlermeldung: Laufzeitfehler 2101: Die von Ihnen eingegebene Einstellung ist für diese Eigenschaft ungültig...
Dann verweigert Access möglicherweise das Einfügen eines Berichts als Unterformular?