VBA Mehrere Tabellen filtern mit einem Klick
#1
Moin zusammen,

meine erste Frage hier. Also gerne darauf hinweisen, falls ich etwas falsch mache :)

Folgende Situation:
Ich habe eine Excel mit diversen Reitern mit jeweils einer definierten und benannten Tabelle. Die erste Spalte ist dabei stets dieselbe, nämlich ADM (= Außendienstmitarbeiter).

Gerne würde ich auf dem ersten Reiter für jeden ADM einen Button erstellen. Klickt er nun auf den Button mit seinem Namen, werden ALLE Tabellen auf den anderen Reitern nach seinem Namen gefiltert.

Eine Google-Recherche hat mich schon so weit gebracht, dass ich wohl ein Makro erstellen muss. Leider hakt es hier bei mir. Ich habe folgendes Makro erstellt:


Code:
Sub FilterADMx()
tlookup = Range("Cover!D2").Value

ActiveSheet.ListObjects("Tabelle16").Range.AutoFilter Field:=1
ActiveSheet.ListObjects("Tabelle12").Range.AutoFilter Field:=1

ActiveSheet.ListObjects("Tabelle16").Range.AutoFilter Field:=1, Criteria1:=tlookup
ActiveSheet.ListObjects("Tabelle12").Range.AutoFilter Field:=1, Criteria1:=tlookup

End Sub



Cover!D2 ist die Zelle, in welcher der Name des ersten ADM steht. Darüber habe ich dann einfach den Button mit seinem Namen gelegt. Die beiden Tabellen 12 und 16 sind Beispieltabellen, es sind deutlich mehr, auf die verwiesen werden soll.

Nun habe ich dem Button das Makro zugewiesen.  Klicke ich darauf erhalte ich die Fehlermeldung "Laufzeitfehler 9: Index außerhalb des gültigen Bereichs." Klicke ich dort auf "Debuggen", hebt er mir gelb die Zeile "ActiveSheet.ListObjects("Tabelle16").Range.AutoFilter Field:=1" hervor.

Mag mir wer helfen? :)

Herzlichen Dank 
Top
#2
(15.10.2020, 13:32)Manlerntnichtaus schrieb: Ich habe eine Excel mit diversen Reitern
[...]
Gerne würde ich auf dem ersten Reiter für jeden ADM einen Button erstellen. Klickt er nun auf den Button mit seinem Namen, werden ALLE Tabellen auf den anderen Reitern nach seinem Namen gefiltert.
Geniale Idee - wenn man es kompliziert machen möchte.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top
#3
@shift-del: Wenn du eine einfachere Idee hast, lass es mich sehr gerne wissen!
Top
#4
Ganz einfach:
Alle Listen zu einer Liste zusammenführen, als Excel-Tabelle formatieren und einen Datenschnitt für die Spalte ADM einfügen.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top
#5
Okay, vielleicht hat die Info gefehlt: Die Tabellen sollen schon getrennt bleiben, weil sie für unterschiedliche Reports verwendet werden. Eine einzelne große Tabelle hilft mir hier also nicht, soweit ich sehen kann.
Top
#6
Hallo,

wenn die Tabelle gefiltert ist, hast doch doch deinen Report. Der Drucker druckt nur, was aktuell sichtbar ist. Wie es scheint, greift der Unfug mit den kleinteiligen Datenerfassungen immer weiter um sich. Macht denn niemand eine Excelschulung?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#7
Hi Klaus-Dieter,

danke für deine Antwort. Würde ich das nur für mich machen, wäre ich mit der großen Liste völlig fein. Das Problem ist, dass das Ganze an absolute Excel-Feinde geht, die mit einem einzigen kleinen Klick ihre vielen kleinen Tabellen filtern können, da mehr sie überfordern würde - völlig wertungsfrei :)

Entsprechend wäre es toll, wenn ihr euch mein Makro mal anschauen könntet.
Top
#8
Hallo,

dann müssen die KolegInnen eben geschult werden.

Dein Makro habe ich mir angesehen, ohne die Datei zu kennen, kann man dazu nicht viel sagen.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#9

.xlsx   Master - Kopie.xlsx (Größe: 37,64 KB / Downloads: 3)

Danke für den Hinweis. Datenbereinigte Version anbei.

Besagte Mitarbeiter schulen ist leider keine Option...
Top
#10
Die üblichen Gründe, es nicht zu tun: Die Kollegen können keinen Computer bedienen und das haben wir schon immer so gemacht.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

[-] Folgende(r) 1 Nutzer sagt Danke an shift-del für diesen Beitrag:
  • Klaus-Dieter
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste