Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

ich habe ein Haupt- und ein Unterfotmular.

Eine Combobox im Hauptformular soll die Werte des Unterformulars ändern.

Jetzt habe ich ein Makro (AktualisiereObjekt), das mir beim Wählen eines Wertes der Combo-Box das Unterformular dementesprechend ändern soll.

Wenn ich als zu aktualisierendes Objekt das Hauptformular wähle passiert nicht; beim Unterformular bringt er 'ne Fehlermeldung, dass das Unterformular nicht geöffnet sei.....

:-(

Geschrieben

Hi!

Ich würde Dir vorschlagen , anstatt mit einem Marko per VBA das zu tun.

Bei der ComboBox gibt es ein Ereignis Nach Aktualisierung. Wenn Du einen Wert in der ComboBox ausgewählt hast, dann hole Dir per SQL die Daten, die Du in Deinem Unterformular haben willst.

--------------------------------------------

Public Sub Combobox_AfterUpdate()

DIM SQL AS STRING

'Daten fürs UF

SQL = "SELECT * FROM TABELLEN WHERE Combobox.WERT"

Forms![HF]![uF].RecordSource = SQL

'Aktualisieren , ist aber glaube ich nicht nötig

Forms![HF]![uF].REQUERY

End Sub

----------------------------------------------

Oder Du verknüpfst Dein HF mit dem UF über 2 Felder aus HF und UF.

Gruss

Geschrieben

Ich hab' das mall ausprobiert aber an dieser Stelle:

Forms![frm_Kursnotenliste]![frm_KursnotenlisteSub].RecordSource = SQL

sagt er mir:

"Laufzeitfehler 438

Objekt unterstützt diese Eigenschaft oder Methode nicht"

:-(

Hier nochmal der ganze Code:

Private Sub ComboBox_Kurs_AfterUpdate()

Dim SQL As String

'Daten fürs UF

SQL = "SELECT tbl_Schueler.NoteFach1, tbl_Schueler.NoteFach2, tbl_Schueler.NoteFach3, tbl_Schueler.NoteFach4, tbl_Schueler.NoteFach5, tbl_Schueler.NoteFach6, tbl_Schueler.NoteFach7, tbl_Schueler.NoteFach8, tbl_Schueler.NoteFach9, tbl_Schueler.NoteFach10, tbl_Schueler.Lehrgang_Kurs, tbl_kurse.Kuerzel FROM tbl_kurse INNER JOIN tbl_Schueler ON tbl_kurse.Kuerzel = tbl_Schueler.Lehrgang_Kurs WHERE (((tbl_Schueler.Lehrgang_Kurs)=[Formulare]![frm_Kursnotenliste]![Kurs]));"

'[tbl_Schueler].[Nachname] & ", \" & [tbl_Schueler].[Vorname] AS Name,

Forms![frm_Kursnotenliste]![frm_KursnotenlisteSub].RecordSource = SQL

'Aktualisieren , ist aber glaube ich nicht nötig

Forms![frm_Kursnotenliste]![frm_KursnotenlisteSub].Requery

End Sub

Geschrieben

Hi,

Danke! Ich bekomme jetzt keine Fehlermeldung mehr. Allerdings wird das Unterformular nicht mit den Werten gefüllt.

Ich hatte ja diese Abfrage, (die funktioniert!) einfach so in den VB-Code kopiert (siehe oben im Thread)....

Ist das nicht richtig?

Was meinst Du mit ComboBox. --->WERT<-----

in deinem Bsp.?

Muss ich für "WERT" erst noch eine Variable deklarieren, der ich dann den Wert der ComboBox zuweise?

Gruss Volker.

Geschrieben

HI!

Kopiere mal das SQL in eine leere Abfrage und schau mal nach, ob er Dir Deine gewünschten Daten liefert.

Vielleicht ist auch das WHERE-Statement falsch. Ich würde auf jeden Fall noch die Spalte ( Column ) angeben, wo Dein Vergleichswert steht.

....WHERE SCHULER.KURS = " & Me.DEINECOMBOBOX.COLUMN(SPALTE)

Gruss

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...