Es ist noch nicht aller Tage Abend,
mir ist die Idee gekommen, das Ganze minimal zu optimieren. Ich kläre kurz mein Vorhaben und dann gehe ich auf den von mir modifizierten Quelltext ein, zudem ich wie es scheint wirklich ein allller letztes Mal deine Unterstützung bräuchte, und auch nur wenn du Zeit hast?
Die Sortierung innerhalb der Dropdownliste funktioniert immer noch tadellos, nun möchte ich das ganze um eine "weitere Kategorie" anpassen und zwar.
Wenn ich im Feld G3 meiner aktuellen Tabelle den Wert "A" eintrage möchte ich dass er alle Werte der Spalte A sortiert. (Das Sortieren der Spalte A klappt ja bereits hervorragend)
Wenn ich im Feld G3 in meiner aktuellen Tabelle den Wert "B" eintrage möchte ich dass alle Werte in der Spalte E per Dropdownliste angezeigt und sortiert werden. Hier habe ich gerade meine Probleme. Heißt je nachdem was ich auswähle "A" oder "B" Bei dem Wert "A" soll die Spalte A der Analysetabelle gezählt werden. Bei dem Wert "B" soll die Spalte E der Analystabelle gezählt werden.
Mein Code dazu sieht wie folgt aus:
Sub gütligkeit()
Dim gültigliste As String
Dim i As Long
Dim letzte As Long
With Sheets("Analysedaten")
gültigliste = ","
'prüft ob das Wort in Zelle G3 der Steuerungstabelle "A" ist. Wenn ja soll die Dropdownliste mit den Werten aus Spalte A erstellt werden
If Sheets("Steuerungstabelle").Range("G3") = "A" Then
'soll ausschließlich nur SPALTE A betrachten
letzte = .Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To letzte
If .Cells(i, 1) <> "" And IsNumeric(.Cells(i, 1)) Then
If InStr(1, gültigliste, "," & .Cells(i, 1) & ",", vbTextCompare) = 0 Then gültigliste = gültigliste & CLng(.Cells(i, 1)) & ","
End If
Next i
ElseIf Sheets("Steuerungstabelle").Range("G3") = "B" Then
'soll ausschließlich nur SPALTE E betrachten
letzte = .Cells(Rows.Count, 5).End(xlUp).Row
For i = 2 To letzte
If .Cells(i, 1) <> "" And IsNumeric(.Cells(i, 5)) Then
If InStr(1, gültigliste, "," & .Cells(i, 5) & ",", vbTextCompare) = 0 Then gültigliste = gültigliste & CLng(.Cells(i, 5)) & ","
End If
Next i
End If
End With
So ganz klappt es nicht, nur mit mehrmaliger Ausführung des Makros allerdings glaube fehlt es mir an einer Schleife kann das sein? Merkwürdigerweise kommt beim Zählen / sortieren der Dropdownliste aufeinmal eine 0 vor, keine Ahnung wo die auf einmal herkommt :S
|