Zellen in einem Bereich aus allen Arbeitsblättern in einer Arbeitsmappe hinzu In diesem Artikel erstellen wir eine benutzerdefinierte Funktion, um die Summe der Zellen im definierten Bereich für alle Arbeitsblätter in einer Arbeitsmappe zu berechnen.

Die Rohdaten für dieses Beispiel bestehen aus mehreren Blättern. Jedes Blatt enthält Daten des Verkaufsteams, einschließlich des Namens des Verkäufers und der Anzahl der von ihm verkauften Artikel zu dem durch den Blattnamen angegebenen Datum.

Verkaufsdaten sind auf allen Arbeitsblättern im Bereich A6: B16 in gleicher Reihenfolge vorhanden.

ArrowRaw

Auf dem Hauptblatt möchten wir die Gesamtzahl der Verkäufe, die von verschiedenen Verkäufern getätigt werden. Um die Gesamtzahl der Verkäufe zu berechnen, müssen wir die Anzahl der Verkäufe aus allen Blättern in der Arbeitsmappe hinzufügen.

ArrowMain

Wir haben die benutzerdefinierte Funktion „SumRangeOfAllSheets“ verwendet, um die Gesamtzahl der Verkäufe zu berechnen, die von verschiedenen Verkäufern getätigt wurden. Die benutzerdefinierte Funktion „SumRangeOfAllSheets“ verwendet den Bereich als Eingabe.

ArrowOutput

Logische Erklärung

Wir haben die benutzerdefinierte Funktion „SumRangeOfAllSheets“ erstellt, um die Summe der Werte in den Zellen im definierten Bereich für alle Arbeitsblätter in der Arbeitsmappe zu berechnen. Die benutzerdefinierte Funktion „SumRangeOfAllSheets“ verwendet den Bereich als Eingabe. Diese Funktion fügt Werte in die Zellen des definierten Bereichs aller Arbeitsblätter ein.

Code Erklärung

WorksheetFunction.Sum Das WorksheetFunction-Objekt wird verwendet, um über Visual Basics auf Excel-Blattfunktionen zuzugreifen. Wir haben die SUMME-Funktion der Excel-Tabelle verwendet, um die Werte im Bereich hinzuzufügen.

InputRange.Address Der obige Code wird verwendet, um die Adresse des angegebenen Bereichs durch das Bereichsobjekt „InputRange“ zurückzugeben.

Bitte folgen Sie unten für den Code

Option Explicit

Function SumRangeOfAllSheets(InputRange As Range)

'Declaring variables

Dim i As Integer

Dim Total As Long

'Looping through the sheets in the worksheets collection starting from second sheet

For i = 2 To Worksheets.Count

'Calculating the sum for specified range of all the sheets

Total = Total + WorksheetFunction.Sum(Worksheets(i).Range(InputRange.Address))

Next

SumRangeOfAllSheets = Total

End Function

Wenn Ihnen dieser Blog gefallen hat, teilen Sie ihn mit Ihren Freunden auf Facebook und Facebook.

Wir würden gerne von Ihnen hören, lassen Sie uns wissen, wie wir unsere Arbeit verbessern und für Sie verbessern können. Schreiben Sie uns unter [email protected]