Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1588to1592
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Filtereigenschaften dynamisch über Tabellenblatt

Filtereigenschaften dynamisch über Tabellenblatt
26.10.2017 22:15:06
Thomas
Guten Abend,
nachdem ich nur gute Erfahrungen in diesem Forum gemacht habe, hoffe ich auch diesmal das mir jemand helfen kann.
Ich würde gerne in vorab Filtereigenschaften auf dem Tabellenblatt "Daten" festlegen,
in das Tabellenblatt "Tabelle1" kommen dann die Rohdaten (wie in der Beispieldatei)
Über ein Makro möchte ich dann gerne, das er sich die Einstellungen für die Filter holt und die Rohdaten danach Filter.
Es kommen wahrscheinlich auch noch mehr Filter hinzu.
Über Hinweise wie man es eventuell geschickter anstellen könnte bin ich nicht abgeneigt.
https://www.herber.de/bbs/user/117246.xlsm
Vielen Dank Thomas

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Enigma?
27.10.2017 08:21:55
Fennek
Hallo,
Fragestelle und potenzielle Antworter haben verschiedene Perspektiven: Die Einen haben ein Problem, die anderen suchen z.B. Unterhaltung. Zuerst möchte ich prüfen, ob diese Art dere Kodierung "zu knacken" ist. Da die rnd-Funktion ohne Randomize genutzt wird, ...
Um für deine Frage einen ersten Tip zu Tipp zu nennen:
Auf snb-vba.eu gibt es sehr ausführliche Beschreibungen, wie der Autofilter per VBA gesteuert werden kann.
mfg
(meine Tests werden etwas dauern, vielleicht habe ich dann noch Zeit für deine FRage)
AW: no way, OK
27.10.2017 09:46:34
Fennek
die Verschlüsselung ist für mich nicht umkehrbar, die Info über die Länge der TExte reicht nicht.
Anzeige
AW: no way, OK
27.10.2017 13:01:42
Thomas
Hallo Fennek,
Die Tabelle 1 soll nur in etwa die Struktur der Tabelle aufzeigen ,
Welche Daten bräuchtest du den ? Dann stell ich nochmal eine kleinere Datei hoch!
Gruß Thomas
AW: unklar
27.10.2017 15:48:05
Fennek
Hallo,
anbei ein erster Schritt:

Sub Test1()
Ar = Sheets("Daten").Cells(1).CurrentRegion
With Tabelle1.Cells(1).CurrentRegion
For i = 1 To UBound(Ar)
If Ar(i, 5) = "Ja" Then
Debug.Print Ar(i, 2), Ar(i, 4) & Ar(i, 3)
.AutoFilter 5, Ar(i, 2)
.AutoFilter
End If
Next i
End With
End Sub
Auf welche Spalte die Information "Wert" und "Opertor" angewendet werden sollen, ist mir unklar.
mfg
Anzeige
AW: unklar
27.10.2017 20:48:30
Thomas
Hi,
nachdem das in der Beispieldatei, bisschen doof dargestellt wurde, erkläre ich es nochmal besser :-)
Im Tabellen Blatt "Daten" , gibt's die Spalte (Benennung) hier steht die Überschrift drin, wie sie exakt im Tabellenblatt "Tabelle1" in Zeile 1 vorkommt! Hier wäre es jetzt richtig genial , wenn hierfür jeweils den Spaltenbuchstabe ins "Daten"-Blatt geschrieben wird und er hier eben die Filter Eigenschaft wie in spalte C und D eigentragen sind, beim ausführen vom Makro in den Filter setzt.
ich hoffe jetzt ist es ein bisschen verständlicher..
danke für deine Hilfe
Thomas
Anzeige
AW: unklar
28.10.2017 16:03:40
Thomas
Hi,
ich konnte schon ganz gut mit deinem Code arbeiten,
allerdings habe ich noch ein paar schwierigkeiten.
Wie kann ich eine Spalte auf einen Eingabe wert von "true" oder "false" filtern lassen?
Kann man die Filter auch irgendwie dynamischer setzen?

Sub Test2()
Ar = Sheets("Daten").Cells(1).CurrentRegion
Dim lngAdressZeile As Long
Dim k As Range
Dim strText As String
With Tabelle1.Cells(1).CurrentRegion
For i = 2 To UBound(Ar)
Set k = .Rows("1:1").Find(What:=Ar(i, 1), LookIn:=xlValues, LookAt:=xlPart, _
SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False)
If Not k Is Nothing Then
lngAdressZeile = k.Column
Else
MsgBox Ar(i, 1) & " ist nicht vorhanden, bitte exakte Benennung eingeben!"
End If
If Ar(i, 5) = "Ja" Then
Debug.Print k.Column, Ar(i, 4), Ar(i, 3)
If Ar(i, 4) = "*" Then .Autofilter Field:=k.Column, Criteria1:=Ar(i, 3) & Ar(i, 4),  _
Operator:=xlAnd
If Ar(i, 4) = "XX" Then .Autofilter Field:=k.Column, Criteria1:="=*" & Ar(i, 3) & "*" _
If Ar(i, 4) = "" Then .Autofilter Field:=k.Column, Criteria1:="" & Ar(i, 3),  _
Operator:=xlAnd
End If
Next i
End With
End Sub
so ist es schon wirklich gut der code, aber leider noch nicht ganz perfekt... und wahrscheinlich ehr schlecht geschrieben :-)
Gruss Thomas
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige