Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Access Datenfilter wie im Excel realisieren

Frage Microsoft Microsoft Office

Mitglied: severinbuob

severinbuob (Level 1) - Jetzt verbinden

29.06.2006, aktualisiert 20.09.2007, 6109 Aufrufe, 13 Kommentare

Guten Tag zusammen!

Ich möchte gerne in einem Access Formular einen Datenfilter hinzufügen. Über jeder Spalte befindet sich ein Kombinationsfeld, mit den Daten der gesamten Spalte. Es gibt über jeder Spalte ein Kombinationsfeld mit den Daten der Spalten. Ziel ist es, dass wenn ich zb. den Namen eines Druckers selektiere, auch nur die Datensätze angezeigt werden, welche auch diesen Namen haben. Es ist eigentlich das selbe Prinzip wie bei Excel der Datenfilter.
Damit ihr es euch besser vorstellen könnt, habe ich zwei Screenshots gemacht:

[eb0de1235522fd2f5871d41aa54122c2-screenshot015 - Klicke auf das Bild, um es zu vergrößern Bild 1]
Datenfilter bei Excel

[a1312c6b9f86beffb4ca5fadbefbfec0-screenshot017 - Klicke auf das Bild, um es zu vergrößern Bild 2]
So sollte es dan aussehen, aber eben mit Funktion :D



Ich danke euch schon im vorraus für euere Antworten

Gruss

Severin
Mitglied: AndreasHoster
29.06.2006 um 17:02 Uhr
Prinzipiell ganz einfach:

Me.Filter = "Spaltenname='" & Me![Kombinationsfeldname] & "'"
Me.FilterOn = True

Und das im "Nach Aktualisierung" Ereignis eintragen.
Allerdings ist es in Access so, das dieses Ereignis erst aufgerufen wird, wenn man aus dem Feld rausgeht, also nur auswählen und im Feld bleiben, triggert dieses Ereignis noch nicht.
Bitte warten ..
Mitglied: Claude
30.06.2006 um 01:09 Uhr
Hallo, Hier eine Lösung mit meheren Felder, die dem AutoFilter von Excel zimmlich nahe kommt:
01.
Function ZK_Filter() 
02.
'***************** 
03.
Dim i As Integer 
04.
Dim CritName As String 'Mitarbeitername 
05.
Dim CritDate As String 
06.
Dim CritProjekt As String 'Projekt 
07.
Dim CritSelect As String 'Monatnr 
08.
Dim CritTestSelect As String 'Minat Buchstabe 
09.
Dim CritStatus As String 'Status 
10.
Dim CritOrt As String 'Ort 
11.
Dim CritStundensatz As String 'Stundensatz 
12.
Dim DatVar As Variant, DatVarFld As Variant 
13.
Dim CritGESAMT As String 
14.
Dim Wort(5) As String, WortPos(5) As Integer 
15.
Dim WortNr As Integer 
16.
Dim AnzWort As Integer 
17.
Dim Mldg As String 
18.
'Dim MM As Variant, DD As Variant, YY As Variant 
19.
'*** 
20.
If IsNull(Me![Filter_Name]) Then CritName = "" Else CritName = "[name]='" & Me![Filter_Name] & "'" 
21.
If IsNull(Me![Filter_Date]) Then CritDate = "" Else CritDate = "[date]=#" & Format(Me![Filter_Date], "m\/d\/yy") & "#" 
22.
If IsNull(Me![Filter_Projekt]) Then CritProjekt = "" Else CritProjekt = "[projekt]='" & Me![Filter_Projekt] & "'" 
23.
If IsNull(Me![Filter_Select]) Then CritSelect = "" Else CritSelect = "[select]='" & Me![Filter_Select] & "'" 
24.
If IsNull(Me![Filter_Test_Select]) Then CritTestSelect = "" Else CritTestSelect = "[test select]='" & Me![Filter_Test_Select] & "'" 
25.
If IsNull(Me![Filter_Status]) Then CritStatus = "" Else CritStatus = "[status]='" & Me![Filter_Status] & "'" 
26.
If IsNull(Me![Filter_Ort]) Then CritOrt = "" Else CritOrt = "[ort]='" & Me![Filter_Ort] & "'" 
27.
If IsNull(Me![Filter_Stundensatz]) Then CritStundensatz = "" Else CritStundensatz = "[Stundensatz]='" & Me![Filter_Stundensatz] & "'" 
28.
'If IsNull(Me![Filter_Wort]) Then CritWort = "" Else GoSub WortFilter 
29.
'*** 
30.
If CritName = "" Then CritGESAMT = "" Else CritGESAMT = CritName 
31.
If CritDate <> "" Then CritGESAMT = CritGESAMT & " AND " & CritDate 
32.
If CritProjekt <> "" Then CritGESAMT = CritGESAMT & " AND " & CritProjekt 
33.
If CritSelect <> "" Then CritGESAMT = CritGESAMT & " AND " & CritSelect 
34.
If CritTestSelect <> "" Then CritGESAMT = CritGESAMT & " AND " & CritTestSelect 
35.
If CritStatus <> "" Then CritGESAMT = CritGESAMT & " AND " & CritStatus 
36.
If CritOrt <> "" Then CritGESAMT = CritGESAMT & " AND " & CritOrt 
37.
If CritStundensatz <> "" Then CritGESAMT = CritGESAMT & " AND " & CritStundensatz 
38.
If Left(CritGESAMT, 4) = " AND" Then CritGESAMT = Mid(CritGESAMT, 6) 
39.
'*** 
40.
If CritGESAMT = "" Then 
41.
    Me.FilterOn = False 
42.
    Me![FilterTxt] = "" 
43.
Else 
44.
    Me.Filter = CritGESAMT 
45.
    Me.FilterOn = True 
46.
    Me![FilterTxt] = CritGESAMT 
47.
End If 
48.
Exit Function
Bitte die Lösung nicht einfach übernehmen, ich wollte nur zeigen wie man mehrere Kombi_Felder kombinieren kann. Wenn Fragen, einfach nochmal melden.

Gruss
Bitte warten ..
Mitglied: severinbuob
30.06.2006 um 14:55 Uhr
Erstmals grosses Lob für diese Idee, wirklich toll. Die Suchwerte dann in einem Textfeld speichern, alles kein Problem. Aber wie kann ich es realisieren, dass nur die jenigen Datensätze angezeigt werden, welche in diesem Textfeld vorhanden sind?

Vielen Dank

Gruss Severin
Bitte warten ..
Mitglied: Claude
30.06.2006 um 15:39 Uhr
Also das Textfeld 'Me![FilterTxt] = CritGESAMT' zeigt im Formular nur an, welcher Filter der Benutzer zusammengestellt hat. Die Arbeit macht eigentlich der Befehl:
01.
Me.Filter = CritGESAMT 
02.
Me.FilterOn = True
Bitte warten ..
Mitglied: Claude
30.06.2006 um 15:41 Uhr

Wenn mir jemand erklärt (...bin halt zu doof), wie man hier ein Bild anzeigt, dann mach' ich ein Screenshot von dem entsprechendem Formular.....
Bitte warten ..
Mitglied: Claude
03.07.2006 um 15:59 Uhr
Hallo Severin,
Der VBA-Code wird bei jedem Kombinationsfeld des Filters in der Eigenschaft "Nach Aktualisierung" hinterlegt.
Die Funktion wird im Klassenmodul des Formulars hinterlegt.
Gruss claude
Bitte warten ..
Mitglied: Untamed
19.09.2007 um 16:25 Uhr
Hallo Claude,

Hoffendlich liest du noch diesen Trend,
Hätte da ne bitte, vielleicht kannst du mir erklären wie und wo genau ich den Code einfügen soll.
Oder besser noch wenn du eine Beispiels db hast wo ich mir das genau angucken könnte
Wäre ne große Hilfe, ich sitze nämlich jetzt schon 2 tage und probiere genau das zu erreichen was du hier dargestellt hast.

Ich danke im Voraus und hoffe das du mir helfen kannst

Gruß

Untamed
Bitte warten ..
Mitglied: severinbuob
19.09.2007 um 16:32 Uhr
Salü Untamed,

Ich bin zwar nicht claude kann dir aber bestimmt auch helfen!
Hier eine beispiel DB --> http://www.carpenox.ch/download/datenfilter.rar

Gruss
Severin
Bitte warten ..
Mitglied: Claude
19.09.2007 um 20:35 Uhr
Hallo, Severin war schneller ....
Sollte noch Bedarf sein, einfach nochmal melden
Gruss
claude
Bitte warten ..
Mitglied: severinbuob
20.09.2007 um 08:20 Uhr
gut dan werde ich die datei wider löschen ^^
schönen tag noch!
gruss
severin
Bitte warten ..
Mitglied: Untamed
20.09.2007 um 11:01 Uhr
HI

Leute, ich danke euch sehr für die schnelle antworten!
Ich werd mich jetzt mal daran setzen und gucken ob ich das jetzt hin kriege!
Falls ich Probleme bekomme dann meld ich mich noch mal, und falls nicht dann DANKE ich euch recht herzlich für die arbeit und zeit die ihr investiert habt!

Gruß

Untamed
Bitte warten ..
Mitglied: Claude
20.09.2007 um 12:07 Uhr
Hallo Severin,
Kleines Missverständnis? Wieso die Datei wieder löschen?
Ich wollte nur anmerken, das du schneller warst als ich, mit dem bereitstellen einer Beispielsdatenbank. Vielen Dank auch.

Wie oben geschrieben: Wenn noch Bedarf besteht, kann ich auch nochmal eine Beispielsdatenbank bereitstellen, da ich diesen Typ von Filter schon öfters eingebaut habe.

mfG
Claude
Bitte warten ..
Mitglied: Untamed
20.09.2007 um 15:57 Uhr
Hallo!

Ich hab zwar gesagt falls es nicht klappt melde ich mich, und wenn doch dann nicht...
Aber ich bin so froh das es jetzt endlich funtz!
Deswegen mochte ich mich noch mal für die Hilfe bedanken!

DANKE DANKE

Gruß

Untamed
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Datenbanken
Access Checkbox mit Kombifeld und dann filtern

Frage von atomas42 zum Thema Datenbanken ...

Microsoft Office
gelöst Excel: Text in Zellbereich prüfen mit Vergleichstext ggf. mit Exact-Funktion (5)

Frage von Michi1 zum Thema Microsoft Office ...

Batch & Shell
CMD cURL Access Token parsen (2)

Frage von maddig zum Thema Batch & Shell ...

VB for Applications
Excel VBA Sortierung von Daten (5)

Frage von easy4breezy zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...