Ich habe hier eine Tabelle, von denen es noch eine Menge mehr gibt und für die ich gerne ein Makro zur Bearbeitung erstellen würde.
https://www.herber.de/bbs/user/80527.xlsx
Undzwar sind folgende 3 Dinge zu tun.
1. Muss in der Spalte BK ab Zeile 8 die Summe aus allen 53 linken Zellen gebildet werden.
2. Soll in der Spalte BL ab Zeile 2 der entsprechende Name eines Vorgangs stehen. Hier wird es allerdings komplizert, da der Name in jeder Spalte von A bis H stehen könnte und immer in jeder zweiten ab Zeile 8.
3. Und zum Schluss soll noch eine bestimmte Formel für jede zweite Summe in Spalte BK ab Zeile 8 angewendet werden und das Ergebnis in Spalte BM ab Zeile 2 stehen.
Hier ist mein bisheriger Code, jedoch mit einer Menge Schwachstellen. Was noch fehlt, ist die Namenswiedergabe (2.) und zu beachten ist auch, dass die Tabellen alle unterschiedlich viele Zeilen haben ab Zeile 8. Ich bin bisher von nur 4 Vorgängen ausgegangen.
Columns("BL:BL").Select
Selection.NumberFormat = "General"
Columns("BM:BM").Select
Selection.Style = "Percent"
Range("BL1").Select
ActiveCell.FormulaR1C1 = "Vorgang"
Range("BL2").Select
ActiveCell.FormulaR1C1 = "=R[6]C[-60]"
Range("BL3").Select
ActiveCell.FormulaR1C1 = "=R[7]C[-60]"
Range("BL4").Select
ActiveCell.FormulaR1C1 = "=R[8]C[-60]"
Range("BL5").Select
ActiveCell.FormulaR1C1 = "=R[9]C[-60]"
Range("BM1").Select
ActiveCell.FormulaR1C1 = "Fortschritt"
Range("BM2").Select
ActiveCell.FormulaR1C1 = _
"=IF(R[6]C[-2]=0,0,IF(R[6]C[-2]=R[7]C[-2],1,0.5))"
Range("BM3").Select
ActiveCell.FormulaR1C1 = _
"=IF(R[7]C[-2]=0,0,IF(R[7]C[-2]=R[8]C[-2],1,0.5))"
Range("BM4").Select
ActiveCell.FormulaR1C1 = _
"=IF(R[8]C[-2]=0,0,IF(R[8]C[-2]=R[9]C[-2],1,0.5))"
Range("BM5").Select
ActiveCell.FormulaR1C1 = _
"=IF(R[9]C[-2]=0,0,IF(R[9]C[-2]=R[10]C[-2],1,0.5))"
Range("BK1").Select
ActiveCell.FormulaR1C1 = "Summe"
Range("BJ1").Select
Selection.Copy
Range("BK1:BM1").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("BK8").Select
ActiveCell.FormulaLocal = "=SUMME(J8:BJ8)"
Range("BK9").Select
ActiveCell.FormulaLocal = "=SUMME(J9:BJ9)"
Range("BK10").Select
ActiveCell.FormulaLocal = "=SUMME(J10:BJ10)"
Range("BK11").Select
ActiveCell.FormulaLocal = "=SUMME(J11:BJ11)"
Range("BK12").Select
ActiveCell.FormulaLocal = "=SUMME(J12:BJ12)"
Range("BK13").Select
ActiveCell.FormulaLocal = "=SUMME(J13:BJ13)"
Range("BK14").Select
ActiveCell.FormulaLocal = "=SUMME(J14:BJ14)"
Range("BK15").Select
ActiveCell.FormulaLocal = "=SUMME(J14:BJ14)"
Ich würde mich sehr freuen, wenn mir jemand helfen kann.Vielen Dank schonmal. SG Niklas