Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: silentwolf am März 12, 2013, 07:04:29

Titel: Mit textfeld endlosformular Filtern?
Beitrag von: silentwolf am März 12, 2013, 07:04:29
Hi,

hab auch schon hier gestöbert leider einiges aber nichts passendes für meine Situation gefunden.
Irgendwie bekomme ich den filter nicht zum laufen :(

Ich habe ein endlosformular subfrmKontaktListe erstellt.
In einem HF habe ich ein txtKontaktSuche eingefügt und würde nun gern das Feld KontaktName im Endlosformular
im Ereignis beim Ändern filtern.

Hoffe jemand könnte mir helfen!

Vielen Dank

Albert
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: database am März 12, 2013, 11:45:36
Hallo Albert,

Schreibst du ins Ereignis 'Nach Aktualisierung' des Textfeldes am HF:


Private Sub txtKontaktSuche_AfterUpdate()
 
   If Not IsNull(Me.txtKontaktSuche)Then
       Me.Filter = "[KontaktName]='" & Me.txtKontaktSuche & "*'"
       Me![subfrmKontaktListe].Form.Filter = Me.Filter    
       Me![subfrm<kontaktListe].Form.FilterOn
   End If

End Sub


oder lt. MS...:

Private Sub txtFilter_AfterUpdate()

   Dim f_sub As Form
   Dim strCriteria As String

   strCriteria = "KontaktName='" & Me!txtKontaktSuche & "*'"

   Set f_sub = Me![subfrmKontaktListe].Form

   f_sub.Filter = strCriteria
   f_sub.FilterOn = True

End Sub


HTH
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: silentwolf am März 12, 2013, 13:43:37
Servus Peter,

vielen Dank erstmal für Deine Hilfe!!
Hab Deine Codes probiert nun leider wieder mal das es bei mir nicht funktioniert :(
Der erste Code von Dir bleibt bei der letzten Zeile stehen. Me![subfrmKontaktListe].Form.FilterOn
Objekt nicht gefunden!?
Der zweite Code filtert ohne Problem in VBA aber da zeigt es mir immer nur einen leeren Datensatz.
Egal was ich im textfeld auswähle :(
Kann das wieder sein das bei mir ein Verweis nicht angeklickt ist?
Die gleichen Verweise wie schon mit Dir besprochen sind in meiner Verweis liste enthalten.


Vielleicht weist Du was da noch falsch sein kann!?


Dankeschön

Albert
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: silentwolf am März 12, 2013, 14:52:15
Hallo Leute,

ich bekomme es leider einfach nicht hin!
Das Unterformular ist auf basis einer Abfrage.
Nun weis ich nicht ob ich in der Abfrage als Kriterium das textfeld angeben muss.
Hab ich auch schon probiert aber irgendwie bekomme ich es nicht zum laufen :(
Hab nun auch noch einen button ins HF gefügt der die Auswahl dann filtern soll. "Wenn nötig??"

Hoffe jemand kann mir noch mal unter die Arme greifen :)

Schöne grüße

Albert
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: database am März 12, 2013, 14:56:31
Hallo Albert,

hast du den Code oben kopiert?
wenn ja musst du eine kleine Änderung machen ... ich hab' da einen Tippfehler drin.

Me![subfrm<KontaktListe].Form.FilterOn

soll heißen

Me![subfrmKontaktListe].Form.FilterOn

und nimm bitte auch an der Stelle  ....   Me.txtKontaktSuche & "*'"   ....  den Stern raus (sonst musst du statt    =     LIKE    schreiben)

Sonst schau mal bitte nach, ob das UFo-Steuerelement auch wirklich ... subfrmKontaktListe im Formularentwurf heißt.

Besteht das Formular schon in der letzten DB-Version .... dann kann ich mir das zu Hause anschauen.

Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: silentwolf am März 12, 2013, 15:50:06
Hallo Peter,

danke wieder für Deine Antwort!

Ich hab eigentlich auch schon alles geändert wie Du gerade geschrieben hast!

Private Sub txtKonName_AfterUpdate()
    If Not IsNull(Me.txtKonName) Then
        Me.Filter = "[KontaktName]='" & Me.txtKonName & "'"
        Me![KontaktListe].Form.Filter = Me.Filter
        Me![KontaktListe].Form.FilterOn
    End If
End Sub

So ist der Code den ich abgeändert habe hab auch die txtFeld name gändert.

Das Uf hat den namen KontaktListe und ist auf einer basis einer Abfrage erstellt.
Das ander vielleicht noch wissenswerte ist das KonName ein Ausdruck in der Abfrage ist!
Also eine Zusammensetzung von
KontaktName: Wenn([Kon_Firma]<>"";[Kon_Firma];[Kon_Vorname] & " " & [Kon_Nachname])

Diesen KontaktNamen würde ich gerne filtern mit einem textfeld.
txtKonName
Habe aber in der Abfrage nun keinen FilterKriterium angegeben!?
Also wie sonst mit forms!frmirgendwas!txtsoundso

Hab eigentlich jetzt schon einiges Probiert und auch gelesen aber komme einfach nicht dahinter wie es funktioniert :(

Schöne Grüße

Albert
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: database am März 13, 2013, 06:10:14
Hallo Albert,

ich habe auf deiner MusterDB ein UF (Endlosform) erstellt und dieses in ein leeres Formule eingebaut.
Ein Textfeld namens 'txtKontaktSuche' befindet sich im HF

mit dem untenstehenden Code filtert das Ding so wie es sei soll

Bitte beachte, dass die Feldbezeichnungen und der Name des UF ev. von deinen Gegebenheiten abweichen kann


Private Sub txtKontaktSuche_AfterUpdate()

   If Not IsNull(Me.txtKontaktSuche) Then
       Me.Filter = "[KontaktName] LIKE '*" & Me.txtKontaktSuche & "*'"
       Me![subfrmKontaktListe].Form.Filter = Me.Filter
       Me![subfrmKontaktListe].Form.FilterOn = True
   End If

End Sub


Durch die Verwendung von LIKE und den beiden Sternen vor und nach dem Textfeldinhalt filtert das Ding auch dann richtig, wenn ein Filterkriterium nicht vollständig eingegeben wird.
Die Datenherkunft des UF ist eine Abfrage auf die tblKontakte mit einem Zusammenfassungsfeld 'KontName' nach deiner Angabe.

HTH
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: silentwolf am März 13, 2013, 07:23:27
Guten Morgen Peter,

ach wenn ich Dich nicht hätte  ;D
Vielen Dank alles super jetzt läuft das Ding!!!
Muss nur noch einen weg finden den Filter zurück zusetzen dann ist alles perfekt!!
Ach hab ich grad erledigt mit einem button und dann filterOn = false gesetzt und jo es funktioniert  ::)
Ich liebe wenn ein Code funktioniert  ;D


Schönen Tag wünsch ich Dir!


Albert
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: Carl am September 26, 2017, 10:53:25
Eine interessante Lösung. Mal ein Danke an database.

Ich lasse den Filter über einen button wieder aufheben.
Titel: Re: Mit textfeld endlosformular Filtern?
Beitrag von: Hondo am September 26, 2017, 14:51:45
Hallo,
bitte nicht auf so jahre alte Beiträge antworten, danke.

Gruß Andreas