In Zellen in einem Bereich von allen Arbeitsblatt in einer Arbeitsmappe mit VBA in Microsoft Excel
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.
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.
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.
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]