Zum Inhalt springen

Access Eine Spalte auf mehrere Kriterien filtern


BlinkyBob

Empfohlene Beiträge

Hallo,

ich arbeite an einer Datenbank in Access 2003. dort soll man als Nutzer über ein Formular mit einer Drodownliste (Kombinationsfeld) seine "eigene" Abfrage kreiren können. Dazu habe ich in der Abfrage bei Kriterium folgendes Hinterlegt: [Forms]![MeinFormular]![Kombinationsfeld]

Dies funktioniert auch wunderbar. nur soll es jetzt möglich sein, mehrere Kriterien der gleichen Art auszuwählen.

Ist dies mit einem Listenfeld mit Mehrfachauswahl möglich? oder über VBA ?

mit

DoCmd.OpenQuery "BenutzerdefinierteAbfrage", , acReadOnly  "HIER DIE FILTER" 

oder irgendwie anders?

Vielleicht kann mir ja jemand von euch helfen bzw. hat eine Anregung für mich. Bin auf dem Gebiet Access / VBA Anfänger.

Vielen Dank schon mal für eure Hilfe.

Gruß BlinkyBob :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Moin,

Dies funktioniert auch wunderbar. nur soll es jetzt möglich sein, mehrere Kriterien der gleichen Art auszuwählen.

Ist dies mit einem Listenfeld mit Mehrfachauswahl möglich? oder über VBA ?

du musst in einer Schleife alle markierten Werte im Listenfeld ermitteln und im Filter erwurschteln, also etwa

Me.Filter = "[DeinSuchfeld] in (" & DeineListeAusDerSchleife & ")"

Me.FilterOn = true

hth

Einen Codeschnipsel für die Schleife kann ich dir geben, wenn nötig, aber erst heute nachmittag.

Reinhold

Link zu diesem Kommentar
Auf anderen Seiten teilen


dim Wertliste as String

Wertliste = ""

For Each ID In DerNameDeinerListbox.ItemsSelected

	if Wertliste <> "" then

		Wertliste = Wertliste & ","

	end if

	Wertliste = Wertliste & DerNameDeinerListbox.ItemData(ID)

Next

'Wertliste danach innerhalb des IN-Operators verwenden wie oben beschrieben

hth

Reinhold

Link zu diesem Kommentar
Auf anderen Seiten teilen

Guten morgen,

danke Reinhold für den Schnipsel, habe am Wochenende etwas gebastelt und so, und hab folgenden Code dabei herausgebracht. ist ähnlich wie deiner.


Private Sub TestExe_Click()

  Dim i As Variant

    Dim Auswahl As String


    Auswahl = ""

    For Each i In Me!LstAlarm.ItemsSelected

        If IsNull(Auswahl) Then

            Auswahl = Me!LstAlarm.Column(0, i)

          Else

            Auswahl = Auswahl & " " & Me!LstAlarm.Column(0, i)

        End If

    Next i

    Me!LstAlarm = Auswahl

End Sub

würde das auch funktionieren?

Gruß und Danke schon mal.

BlinkyBob

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 5 Monate später...

Hallo,

ich habe ein ganz ähnliches Problem, möchte allerdings ein Unterformular statt einer Combobox für die Auswahl verwenden.

Kann mir jemand einen Tipp geben, ob und gegebenenfalls wie ich den hier geposteten Code an meine Anforderung anpassen kann?

Mein Problem ist vor allem die Anpassung der Zeile "For Each ID In DerNameDeinerListbox.ItemsSelected". Hier ist mir unklar, wie ein Bezug auf die Inhalte eines Unterformulars aussehen könnte.

Vielen Dank im Voraus!

Fabian

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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...