Microsoft Excel

Herbers Excel/VBA-Archiv

VBA: Werte aus Array mit Eingangswert auslesen

Betrifft: VBA: Werte aus Array mit Eingangswert auslesen von: Walter
Geschrieben am: 15.11.2014 18:07:33

Hallo Zusammen,

schreibe heute das erst Mal einen Eintrag. Bisher konnte ich hier sehr viel Wissen abholen, doch mit einer akuellen Aufgabenstellung komme ich auch damit nicht zurecht.
Ich habe eine lange Liste an Tickets aus einem Ticketsystem. Es gibt unterschiedliche Kunden, alle haben Tickets, die in einem Zustand stehen (offen, in Bearbeitung, usw.)
Die Liste soll nun je Kunde gefiltert werden. Die Auswahl der Zustände ändert sich je nach Bedarf. D.h. mal möchte man alle sehen, mal nur die offenen, mal nur die in Barbeitung stehen.
Ist die Liste mit diesen Eingangswerten Kunde und dann Zustände gefiltert, kopiere ich die gefilterten Tickets für die weitere Aufbereitung.

Die Übergabe an den Filter für eine Kunden habe ich über einen Array gemacht. Das funktioniert gut, aber ich würde gerne die Tabelle komplett in einen Array einlesen und dann die entsprechenden Dten für den Filter entsprechend dem Kundennamen auslesen und an den Spaltenfilter übergeben:

ActiveSheet.Range("$A$1:$S$1000").AutoFilter Field:=3, Criteria1:=kd
ActiveSheet.Range("$A$1:$S$1000").AutoFilter Field:=7, Criteria1:=">=" & CDbl(dv), Operator:= _
xlAnd
ActiveSheet.Range("$A$1:$S$1000").AutoFilter Field:=5, Criteria1:=zs, Operator:=xlFilterValues  


zs ist dann das Array. aber das ganze läuft nur für einen Kunden :-(

Die Tabelle der Zustände und Kunden und den benötigten Zuständen habe ich auf einem Tabellenblatt.
Die Tabelle ist in x und Y-Achse aufteilt.
In x stehen die Kunden01- 09.
In y stehen die Ticketzustände



Die erste Zeile nach dem Kunden ist ein Wert in Tagen, damit ich in einen anderen Filter ein Datum übergeben kann. Es steht nur 500 und eine 1 bei dem Kunden mit dem ich getestet hatte. Später soll pro Kunde die Einstellungen vorgenommen werden. Evtl. wird die Liste dann auch noch erweitert.

Ihc würde nun gerne den Kunden über ein anderes Feld vorgeben. Dies wird an die Variable kd übergeben. Damit geht es dann in das Array und mit den Werten unter dem Kunden (also aus der entsprechenden Spalte) werden die 1 Werte ausgwertet, damit dann die Zustände, welche gefiltert werden sollen, an den Filter übergeben werden können.

Klingt für mich kompliziert und ist es auch ;-)
Wahrscheinlich für euch nicht.

Vielen Dank für eure Unterstützung.

Walter

  

Betrifft: AW: VBA: Werte aus Array mit Eingangswert auslesen von: fcs
Geschrieben am: 17.11.2014 16:40:50

Hallo Walter,

lade bitte mal eine Beispieldatei mit ein paar anonymisierten Ticketdaten, der Tabelle mit den Einstellungswerten für den Autofilter, und den bisher von dir erstellten erstellten Makros zum Filtern hoch.

Warum soll ein Helfer das zum Testen alles nachbauen?

Gruß
Franz


 

Beiträge aus den Excel-Beispielen zum Thema "VBA: Werte aus Array mit Eingangswert auslesen"