VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

Summe über dynamischen Bereich bilden

Gruppe

UDF

Bereich

Summe

Thema

Summe über dynamischen Bereich bilden

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.

Lösung

Geben Sie die nachfolgende benutzerdefinierte Funktion in ein Standardmodul ein.




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

    


Beiträge aus dem Excel-Forum zu den Themen UDF und Summe