Zwischensummen auf Sheet beschränken
13.01.2006 09:24:19
Björn
ich habe ein Workbook mit 5 Sheets, bei Eingabe von Daten über ein Formular wird bereits per ComboBox ausgewählt in welches Sheet die Daten übertragen werden.
Das klappt auch ganz gut, nur die Zwischensummen, die ich im Code errechnen lasse beschränken sich komischerweise nicht auf das jeweilige Sheet, sondern er übernimmt ungewollt die Werte aller Sheets.
Jemand ne Idee wieso?
es geht um die Summenberechnung im letzten Abschnitt
Code:
...
With ThisWorkbook.Worksheets(strHHSt)
inty = 1
intSummen = 1
dblGesamt = CDbl(txtEtat) + CDbl(txtFreieMittel) + CDbl(txtVerfMittel) + CDbl(txtDenkmal) + CDbl(txtBonifatius)
'freie Spalte suchen
Do Until .Cells(inty, 1) = ""
inty = inty + 1
Loop
.Cells(inty, 1) = inty - 1
.Cells(inty, 2) = cboSachbearbeiter
.Cells(inty, 3) = cboHHSt
.Cells(inty, 4) = txtGemeinde
.Cells(inty, 5) = txtPatron
.Cells(inty, 6) = Format$(txtDatum, "dd mm yyyy")
.Cells(inty, 7) = txtBeschreibung
.Cells(inty, 8) = CDbl(txtGesamtBew)
.Cells(inty, 9) = CDbl(txtEtat)
.Cells(inty, 11) = CDbl(txtFreieMittel)
.Cells(inty, 12) = CDbl(txtVerfMittel)
.Cells(inty, 13) = CDbl(txtDenkmal)
.Cells(inty, 15) = CDbl(txtBonifatius)
'Summierung der Zwischensummen
.Cells(inty, 10) = Application.Worksheetfunktion.Sum(Range("I2:I" & CStr(inty)))
.Cells(inty, 14) = Application.WorksheetFunction.Sum(Range("L2:m" & CStr(inty)))
.Cells(inty, 16) = Application.WorksheetFunction.Sum(Range("O2:O" & CStr(inty)))
.Cells(inty, 17) = dblGesamt
'Zeile einfügen
intx = inty + 1
.Rows(CStr(intx) & ":" & CStr(intx)).Insert Shift:=xlDown
End with
...
Gruß
Björn