Office - Word, Excel und Co. 9.706 Themen, 40.868 Beiträge

Excel97 - Zwischensumme automatisch auswerfen

jaelle / 5 Antworten / Flachansicht Nickles

Hi,


ich habe ein kleines Problem mit Excel97. Wenn ich z.B. in Excel eine längere Rechnung schreibe, die über mehrere Seiten geht, gibt es dann eine Möglichkeit, dass Excel am Ende jeder Seite automatisch die Zwischensumme auswirft?


Für Eure Hilfe bedanke ich mich im Voraus!


CU


Jaelle

bei Antwort benachrichtigen
Uli M jaelle „Danke für deine schnelle Antwort. So habe ich das bisher aber schon gemacht....“
Optionen

Obwohl ich nicht eben Excel-Spezialist bin, hat's mich doch gereizt und ich habe was dazu probiert. Vielleicht kannst du darauf aufbauen. Bedenke u.a., dass
- die Makroausführung die Rückgängig-Liste löscht
- eine event. Endsumme nicht die Zwischensummen mit erfassen sollte (also andere Spalten)
- das Makro so nur 1 mal ablaufen sollte (vorab könnte natürlich nach den Zwischensummen gesucht werden und die Zeilen gelöscht)

Sub xxx()
Const ksSpalte As String = "C" ' Die Spalte mit den aufzusummierenden Werten
Dim oBlatt As Worksheet
Dim oHorSeitenumbruch As HPageBreak
Dim oUmbruch As Range
Dim I As Integer, iStart As Integer, iAkt As Integer
Dim sFormel As String

iStart = 1 ' 1. Zeile mit den aufzusummierenden Werten
Set oBlatt = ActiveSheet
With oBlatt
.ResetAllPageBreaks ' nur zum Test
If .HPageBreaks.Count For I = 1 To .HPageBreaks.Count
Set oHorSeitenumbruch = .HPageBreaks(I)
Set oUmbruch = oHorSeitenumbruch.Location ' ergibt 1. Zelle der nächsten Seite
iAkt = oUmbruch.Row - 1
sFormel = "=SUM(" & ksSpalte & iStart & ":" & ksSpalte & iAkt - 1 & ")"
Set oUmbruch = .Rows(iAkt)
oUmbruch.EntireRow.Select
Selection.Insert xlDown
.Cells(iAkt, 1) = "Zwischensumme:"
.Cells(iAkt, 2).Formula = sFormel
iStart = iAkt + 1
Next I
End With
End Sub

bei Antwort benachrichtigen