Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Unterformular Filtern im Formular

Begonnen von itaflo, Juli 09, 2019, 10:18:16

⏪ vorheriges - nächstes ⏩

itaflo

Ich möchte im meinem Formular "ECNzurückmelden" über einen Kombifeld einen Filter setzten der mir letztendlich mein Unterformular Filtert.

Mein Unterformular heißt "DatenUnterformular" 

Das Feld das im Unterformular berücksichtigt werden soll heißt "Erlediger"

ich habe auch ein VBA probiert bekomme aber immer eine Fehlermeldung : ECN kann in ihrem Ausdruck angesprochene Feld 'DatenUnterformular' nicht finden.

hier mein VBA:
Private Sub Kombinationsfeld3_Click()

Dim strFilter As String
     strFilter = "Erlediger = " & Me!Kombinationsfeld3
     Debug.Print strFilter
     With Me!DatenUnterformular.Form
     .Filter = strFilter
     .FilterOn = True
     End With

End Sub

Josef P.

#1
Hallo!

ZitatMein Unterformular heißt "DatenUnterformular" 

Wenn das Unterformularsteuerelement DatenUnterformular heißt, sollte der Code laufen.
Der Formularname ist für den Code nicht relevant.

Wenn du Me.UnterformularSteuerelementName (statt Me!...) verwendest, hilft dir Intelisense bei der Auswahl.


/edit:
Ich vermute, dass ist ein anderer Fehler.
Kann es sein, dass du in der Datenquelle des Formulars "DatenUnterformular" einen Bezug zum Formular hast?

mfg
Josef

datekk

Es könnte tatsächlich an dem "!" liegen. Damit werden eigentlich Datenbankfelder angesprochen, nicht aber Steuerelemente. Probier also mal Me.DatenUnterformular.Form aus...

Frage ist noch, was von dem Kombi für ein Wert zurückgegeben wird. Handelt es sich dabei um einen String, muss die Anweisung wie folgt lauten:

.Filter = "Erlediger = '" & strFilter & "'"

Da ein String immer in Hochkomma gesetzt wird also z.B.

.Filter = "Erlediger = 'String'"

LG
Access 2016 mit SQL Server Backend. Bereits umgesetzt: Access mit MS SQL Backend,  ADODB Formularbindung, Streamen von Dateien zum SQL Server und zurück (Filestream), Drag&Drop Dateiupload zum Server, CTI / TAPI Integrierung in Access Anwendung - Nutzung auch über Remote Desktop, selbst aktualisierendes Access Frontend auf entfernten Rechnern (Upgrade). Berichte / Kreuztabellen mit SQL Server Backend, Mail Tagging, Outlook Steuerung über Access und umgekehrt // Grundwissen in .Net Core & Blazor Apps

Josef P.

[etwas OT]
ZitatEs könnte tatsächlich an dem "!" liegen. Damit werden eigentlich Datenbankfelder angesprochen, nicht aber Steuerelemente.
Me!... steht für Me.Controls("...") .. damit kann man Datenfelder und Steuerelemente.
ansprechen.

mfg
Josef