Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: fred-neumann am Januar 10, 2016, 18:11:45

Titel: Filtern nach mehreren Kriterien
Beitrag von: fred-neumann am Januar 10, 2016, 18:11:45
Guten Tag,
ich habe x Varianten gesucht und keinen Treffer für folgendes Problem in meinem Endlosformular gefunden;
Das untere VBA
filtert nach dem Wert aus Feld "suche1" in dem Feld "Treffer1" und
filtert nach dem Wert aus Feld "suche2" in dem Feld "Treffer2"
Me.Filter = "[Treffer1] = '" & suche1 & "' And [Treffer2] = '" & suche2 & "'"
    Me.FilterOn = True

Klappt!
Es sind alles Festkommazahlen.
Mein Problem:
Ich möchte aus den "Suchvorgaben",- also Felder [suche1], [suche2] nicht den absoluten gleichen Wert gefilter bekommen, sondern in jeden der Felder (suche1, suche2) soll eine Toleranz von 0,5 mit einfließen.
Beispiel: suche1 hat den Wert von 1,9 dann soll dieses filterkriterium Werte zwischen 1,4 und 2,4 in Feld [Treffer1] ausgeben. -- Das selbe in suche2/Treffer2
Kann mir bitte jemand die Ergänzung für das obere VBA schreiben?
Titel: Re: Filtern nach mehreren Kriterien
Beitrag von: MaggieMay am Januar 10, 2016, 18:28:35
Hi,
ZitatEs sind alles Festkommazahlen.
dann wundert es mich, dass du sie wie Texte behandelst.

Im Prinzip ginge das so:
Me.Filter = "[Treffer1] Between '" & suche1 - 0.5 & "' And '" [color=red]& [/color]suche1 + 0.5 & "' And [Treffer2] Between '" & suche2 - 0.5 & "' And '" [color=red]& [/color]suche2 + 0.5 & "'"

Edit: fehlende Verkettungszeichen ergänzt.
Titel: Re: Filtern nach mehreren Kriterien
Beitrag von: fred-neumann am Januar 10, 2016, 18:55:34
Guten Tag MaggieMay,
danke für deine Aufmerksamkeit & Mühe!
mir kam`s auch seltsam vor,- in Gänsefüßchen deutet auf Text hin und so weiter ...
ich habe von vba sehr wenig Ahnung ... aber es klappt.
Dein Code nimmt er nicht an,- meldet "Erwartet: Anweisungsende" und hinterlegt farbig "suche1" im Code,-   was ist gemeint?
Titel: Re: Filtern nach mehreren Kriterien
Beitrag von: fred-neumann am Januar 10, 2016, 19:09:30
naja, wenigstens das bekomme ich hin
korrekt:
Me.Filter = "[Treffer1] Between '" & suche1 - 0.5 & "' And '" & suche1 + 0.5 & "' And [Treffer2] Between '" & suche2 - 0.5 & "' And '" & suche2 + 0.5 & "'"
danke MaggieMay