Anzeige
Archiv - Navigation
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
956to960
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

automatische Summe bei variablen bereich

automatische Summe bei variablen bereich
06.03.2008 12:02:00
gregor.holub@gmx.at
Hallo!
Ich habe ein Skript im Internet gefunden, das von unten nach oben schaut, wo zwei Werte nicht gleich sind
und dann eine Leerzeile einfügt. Also etwa so:
ZNr. Region Absatz
1 Ost 23,34
2 Ost 43,45
3 Ost 18,23
4 Ost 38,43
5 West 11,23
6 West 54,34
7 West 34,43
8 Mitte 64,49
9 Mitte 83,43
Und hier fügt der Code zwischen Zeile 4 und 5 sowie zwischen 7 und 8 ein - SO WEIT SO GUT
Ich möchte aber nun in dieser Leerzeile die Summe für die Regionen einfügen. Das Problem dabei ist
weiters, dass einmal mehr einmal weniger Absätze für jede Region vorhanden sind.
Hat da wer eine Ahnung?
Der Code für das Zeileneinfügen ist:
Dim i As Long
Dim tbl As Worksheet
Set tbl = Sheets(2)
For i = 1000 To 3 Step -1
If tbl.Range("B" & i) tbl.Range("A" & i - 1) Then
tbl.Range("B" & i).EntireRow.Insert Shift:=xlDown
End If
Next i

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: automatische Summe bei variablen bereich
06.03.2008 12:46:36
Beverly
Hi Gregor,

Sub leerzellen_einfuegen()
Dim loLetzte As Long
Dim loZeile As Long
Dim loZaehler As Long
Dim loSumme As Long
Application.ScreenUpdating = False
With Worksheets("Tabelle1")
loLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 1)), .Cells(.Rows.Count, 1).End(xlUp).Row, . _
Rows.Count)
loZaehler = loLetzte + 2
For loZeile = loLetzte To 2 Step -1
If .Cells(loZeile, 1).Value  .Cells(loZeile - 1, 1).Value Then
loSumme = loSumme + .Cells(loZeile, 2).Value
.Range(.Cells(loZeile, 1), .Cells(loZeile, 2)).Insert
.Cells(loZaehler, 1) = "Summe"
.Cells(loZaehler, 2) = loSumme
loZaehler = loZeile + 1
loSumme = 0                 ' Summe zurücksetzen
Else
loSumme = loSumme + .Cells(loZeile, 2).Value
End If
Next loZeile
.Rows(2).EntireRow.Delete
End With
Application.ScreenUpdating = True
End Sub




Anzeige
AW: automatische Summe bei variablen bereich
06.03.2008 12:53:05
gregor.holub@gmx.at
Danke - werde ich gleich ausprobieren!

AW: automatische Summe bei variablen bereich
06.03.2008 12:56:43
Mag
Hi,
oder:

Option Explicit
Sub ttt()
Dim i As Long, letzte As Long
Dim tbl As Worksheet
Set tbl = Sheets(2)
letzte = tbl.Range("A65536").End(xlUp).Row
For i = letzte To 2 Step -1
If tbl.Range("A" & i)  tbl.Range("A" & i - 1) Then
tbl.Range("A" & i).EntireRow.Insert Shift:=xlDown
tbl.Range("A" & letzte + 2) = "->Summe:"
tbl.Range("B" & letzte + 2) = _
Application.WorksheetFunction.Sum(tbl.Range("B" & i + 1 & ":B" & letzte + 1))
letzte = i - 1
End If
Next i
tbl.Range("A2").EntireRow.Delete
End Sub


Gruss

Anzeige
AW: automatische Summe bei variablen bereich
06.03.2008 13:04:29
gregor.holub@gmx.at
GENIAL - DAS FUNKTIONIERT EINWANDFREI!!!!!
VIELEN, VIELEN, VIELEN DANK!!!

AW: automatische Summe bei variablen bereich
06.03.2008 13:12:08
haw
Hallo,
so z.B.:

Sub Main()
trennen
summe
End Sub



Sub trennen()
Dim i As Long
Dim tbl As Worksheet
Set tbl = Sheets(1)
For i = 1000 To 3 Step -1
If tbl.Range("B" & i)  tbl.Range("B" & i - 1) Then
tbl.Range("B" & i).EntireRow.Insert Shift:=xlDown
End If
Next i
End Sub



Sub summe()
Dim i As Long, a%, e%, lz%
Dim tbl As Worksheet
Set tbl = Sheets(1)
lz = tbl.Cells(Rows.Count, 2).End(xlUp).Row
Do While e 


Gruß
Heinz

Anzeige
AW: noch einfacher: TEILERGEBNIS
06.03.2008 14:24:22
haw
Hallo Gregor,
Was hältst von Teilergebnissen?
Daten/Teilergebnisse...
Gruß
Heinz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige