Gruppe
UDF
Problem
ber VBA soll eine Summe über einen dynamischen Bereich gebildet werden. Die erste Zelle ist die Zelle über der Summenformel oder bei VBA-Aufruf - die aktive Zelle, die letzte Zelle die Zelle vor der ersten leeren Zelle.
StandardModule: basMain
Sub Aufruf()
MsgBox DynaSum(ActiveCell)
End Sub
Function DynaSum(Optional rng As Range)
Dim dSum As Double
Dim lRow As Long
Dim iCol As Integer
If rng Is Nothing Then
Set rng = Application.Caller
End If
iCol = rng.Column
lRow = rng.Row
Do Until IsEmpty(Cells(lRow - 1, iCol))
dSum = dSum + Cells(lRow - 1, iCol)
lRow = lRow - 1
If lRow = 1 Then Exit Do
Loop
DynaSum = dSum
End Function