hier ist wahrscheinlich meine vorletzte Frage zu meinem ersten VBA-Projekt.
Nachdem ich die Vergleichsgeschichte jetzt langsam aber sicher verstanden habe, suche ich nach der Lösung für ein Problem, dass ich nicht beim Namen nennen kann.
Mit hilfe des beigefügten Bildes, versuche ich es zu umschreiben:
Jedes Mal, wenn sich in Spalte A die Leitungsnummer ändert, möchte ich in Spalte K (genau da wo jetzt immer die Null steht) die Summe aller Leitungslängen (aus Spalte E) mit der selben Leitungsnummer ausrechnen. Sprich: Alle Längen zwischen den dicken Trennstrichen sollen summiert und jeweils in der letzten Zelle über dem Trennstrich aufgeschrieben werden.
Mein Code (siehe unten) ist soweit,
dass ich erkenne, wann sich die Leitungsnummer ändert
das ich den Platz wählen kann, wo das Ergebnis stehen soll
Was mir fehlt:
das Wissen, wie ich die Formel =summe(E3:E8) so anwenden kann, dass der Bereich der ersten Berechnung automatisch auf die anderen Bereiche, also auf die anderen Leitungsnummern, übernommen wird.
Mein Code sieht so aus:
Sub Leitung_Gesamtlaenge()
' berechnet die Gesamtlänge der Leitung für jede Leitungsnummer
Columns("K:K").Select
Selection.NumberFormat = "#,##0" ' Formatiert die Zielspalte als Zahl
Dim Zeilen_Zahl As Integer ' belegte Zeilen
Dim i As Integer ' Zähler aktuelle Zeile
Dim l As Integer ' Zähler aktuelle Zeile - 1
Dim Wert As Integer ' Wert = Summe aller Leitungslängen _
einer Leitungsnummer
Sheets("Tabelle1").Activate
Zeilen_Zahl = Cells(Rows.Count, "A").End(xlUp).Row
For i = 4 To Zeilen_Zahl
l = i - 1
If Range("A" & l) Range("A" & i) Then
Range("K" & l).Select
' ActiveCell.FormulaR1C1 = '
Ich danke euch vielmals!