da ich mit meinen VBA-Kenntnissen absolut nicht weiterkomme, muss ich jetzt hier doch einmal anfragen, vielleicht habt Ihr ja eine Idee.
Ich habe eine Excel-Tabelle mit Werten 0-1. Beispieltabelle (Tabellenblatt "Rohdaten")anbei.
https://www.herber.de/bbs/user/135604.xlsx
Die Überschrift beinhaltet die Texte TWO, THREE und GLOBAL und PROZENT, wobei vor jeder Spalte GLOBAL eine Spalte PROZENT steht, die ich mit einem VBA-Code berechnen lassen will.
Im Ergebnis soll dann jeweils die Excel-Formel in der Tabelle stehen, wie in der Beispiel-Datei, so dass bei Änderungen, der Wert aktualisiert wird (Tabellenblatt "Ergebnis mit EXCEL-Formel")
Es soll immer die erreichte Prozentzahl angegeben werden bezogen auf dem Bereich, der zwischen den GLOBAL-Spalten steht bzw. bei der ersten PROZENT-Spalte Bezug auf den Bereich bis einschließlich Spalte B.
Da ich mehrere solcher Tabellen habe und GLOBAL nicht immer an der gleichen Stelle steht, muß der Code variabel sein. Startpunkt ist bei allen Tabellen Spalte B.
Jetzt habe ich mal ein Skript geschrieben s.u. , damit wird mir erst einmal eine Summe berechnet, allerdings ist das Ergebnis nur bei der ersten Spalte korrekt und es steht auch nur der Wert drin und nicht die Formel.
Ich hoffe, Ihr könnt mir weiter helfen,
viele Grüße
Acki
Sub Prozente()
Dim iSpalte As Integer
Dim iZeile As Integer
Dim Bereich As Range
For iSpalte = 2 To 256
For iZeile = 2 To 300
Set Bereich = Range(Cells(iZeile, 2), Cells(iZeile, iSpalte - 1))
If Cells(1, iSpalte) = "PROZENT" And Cells(iZeile, 1) "" Then
Cells(iZeile, iSpalte) = Application.WorksheetFunction.Sum(Bereich)
End If
Next iZeile
Next iSpalte
End Sub