Liebe kluge Leute!
Ich muss mich heute mit einem Problem an euch wenden, das sicher mega leicht für euch ist - trotzdem scheiter ich...
Eine Tabelle soll in eine Matrix umgewandelt werden. Dafür hab ich zwei Variablen i (Likelihood, horizontal) und j (impact, vertikal).
THREAT SPECIFICATION |
LIKELIHOOD FROM 1-5 |
IMPACT FROM 1-5 |
Threat E |
1-Very Unlikely |
1-Minor |
Threat F |
2-Unlikely |
1-Minor |
Threatt H |
3-Possible |
5-Critical |
BEFORE MITIGATION MEASURES |
IMPACT |
|
|
|
1-Minor |
2-Negligble |
3-Moderate |
4-Severe |
5-Critical |
|
LIKELIHOOD |
1-Very Unlikely |
Threat E |
|
|
|
|
|
2-Unlikely |
Threat F |
|
|
|
|
|
3-Possible |
|
|
|
|
Threat H |
|
4-Likely |
|
|
|
|
|
|
5-Almost Certain |
|
|
|
|
|
Ich hätte das über eine Schleife lösen wollen - steh jetzt aber komplett an, wie ich in der Matrix, wenn i um 1 steigt, eine Spalte nach rechts rutschen kann.
Vielleicht wirds klarer, wenn ich euch meinen Code zeige:
i = 1
imax = 5
i = i - 1
schleife:
i = i + 1
If i > imax Then GoTo ende:
Worksheets("Tabelle").Range("$A$5:$AC$31").AutoFilter Field:=22, Criteria1:="<>"
Worksheets("Tabelle").Range("$A$5:$AC$31").AutoFilter Field:=20, Criteria1:=i & 1 'ich filter also alle Tabelleneinträge, die in das Matrixfeld 1-1 gehören
Worksheets("Tabelle").Range("V6:V100").Copy 'hab keine bessere Lösung für "kopier bitte mein Filterergebnis" gefunden
Worksheets("Matrix").Select
Cells("D3:D97").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
GoTo schleife:
j hab ich noch nicht eingebaut (soweit bin ich noch gar nicht gekommen)... aber im Endeffekt hätte ich das so einmal für alle i + j Kombinationen durchgespielt.
Wenn ihr statt meinem stümperhaften Zusammengestoppele eine bessere Lösung habt, bin ich immer dankbar für Verbesserungsvorschläge :)
Könnt ihr mir helfen, wie ich spalte D im fall "i+1" zu E, "i+2" zu F undsoweiter bzw. "j+1" zu D4 machen kann?
Ich dank euch vielmals!
LG Eva
|