Zum Hauptinhalt springen

Excel VBA: Subtotal-Funktion zum Arbeiten mit Anwendungsblättern

Excel VBA (Visual Basic for Applications) ist ein leistungsfähiges Werkzeug, um die Arbeit in Microsoft Excel zu automatisieren und zu vereinfachen. Es ermöglicht dem Benutzer, Makros zu erstellen, die automatisch bestimmte Aktionen in Excel ausführen, z. B. Datenformatierung, Berechnung, Sortierung und Filterung.

Eine der nützlichen VBA-Funktionen für die Arbeit mit Excel-Arbeitsblättern ist die Funktion Subtotal. Mit dieser Funktion können Sie die Summe, den Durchschnitt, den minimalen und maximalen Wert für einen bestimmten Bereich von Zellen in einem Excel-Arbeitsblatt berechnen.

Die Subtotal-Funktion hat zwei erforderliche Argumente: das erste Argument gibt den Typ der Aggregatfunktion an, die auf einen Zellbereich angewendet werden soll, und das zweite Argument gibt den Zellbereich an. Für jeden Aggregatfunktionstyp (z. B. Summe, Durchschnitt, Minimum) gibt es eine eigene Nummer.

Zum Beispiel, wenn Sie die Summe der Zellen im Bereich A1 berechnen müssen:A10, können Sie die Funktion verwenden Subtotal(9, Range("A1:A10")).

Mit der Funktion Subtotal können Sie auch die Ergebnisse anderer Aggregatfunktionen im selben Arbeitsblatt ignorieren. Wenn Sie beispielsweise die Funktion Subtotal in einer Zelle verwenden, die in der Formel zum automatischen Zählen der Summe aller Zellen in einem Arbeitsblatt verwendet wird, wird das Ergebnis der Funktion Subtotal nur für die sichtbaren Zellen berechnet, wobei die ausgeblendeten Zellen ignoriert werden.

Excel VBA: Subtotal-Funktion zum Filtern von Daten

Die Funktion Subtotal in der Programmiersprache VBA für Excel bietet ein leistungsfähiges Tool zum Filtern und Analysieren von Daten in Anwendungsblättern. Mit dieser Funktion können Sie verschiedene Berechnungen und Operationen für die Daten durchführen und die Ergebnisse automatisch aktualisieren, wenn Daten geändert und gefiltert werden.

Um die Funktion Subtotal zu verwenden, müssen Sie deren Parameter angeben, die festlegen, welche Vorgänge für die Daten ausgeführt werden sollen. Die Parameter werden als ganzzahlige Codes angegeben, die bestimmten Vorgängen entsprechen. Beispiel: Code 1 entspricht einer Summenoperation, 9 einer Datensatzanzahl und so weiter.

Die Subtotal-Funktion kann besonders nützlich sein, wenn Sie mit großen Datenmengen arbeiten, wenn Sie Daten nach verschiedenen Kriterien aggregieren und filtern möchten. Mit dieser Funktion können Sie beispielsweise die Summe oder den Durchschnitt nur für sichtbare Zeilen in einer Tabelle leicht berechnen, indem Sie die durch den Filter oder die Gruppierung verborgenen Daten ignorieren.

Um die Funktion Subtotal zu verwenden, müssen Sie ein VBA-Modul erstellen und den entsprechenden Code schreiben. Beispielcode zum Berechnen der Summe nur für sichtbare Zeilen:

Sub CalculateSum()Dim rng As RangeDim visibleRange As Range' Определение диапазона данныхSet rng = ThisWorkbook.Worksheets("Лист1").Range("A1:A10")' Получение видимых строкSet visibleRange = rng.SpecialCells(xlCellTypeVisible)' Вычисление суммы видимых строкMsgBox WorksheetFunction.Subtotal(9, visibleRange)End Sub

In diesem Beispiel wird die Subtotal-Funktion mit dem Parameter 9 aufgerufen, der der Elementanzahl entspricht, und übergibt einen sichtbaren Zeilenbereich als Argument. Das Ergebnis wird mit der Funktion Subtotal berechnet und in der MsgBox-Nachricht angezeigt.

Die Subtotal-Funktion in der VBA-Programmiersprache für Excel macht es daher einfach, Daten in Anwendungsblättern zu filtern und zu analysieren. Es bietet verschiedene Vorgänge für die Arbeit mit Daten und die automatische Aktualisierung der Ergebnisse, wenn sich die Daten ändern. Die Verwendung der Subtotal-Funktion kann die Analyse und Verarbeitung großer Datenmengen in Excel erheblich vereinfachen.

Definition der Subtotal-Funktion

Der Hauptvorteil der Subtotal-Funktion besteht darin, dass sie Werte ignorieren kann, die durch einen Filter oder eine Gruppierung verborgen sind. Darüber hinaus werden die Ergebnisse automatisch aktualisiert, wenn der Benutzer die Daten ändert.

Um die Subtotal-Funktion zu verwenden, müssen Sie zwei Parameter angeben: der erste Parameter (Funktion) gibt den auszuführenden Vorgang an, und der zweite Parameter (Bereich) gibt den Bereich der Zellen an, mit denen der Vorgang ausgeführt werden soll.

Zum Beispiel, =Subtotal(9, A1:A10) gibt die Summe der Werte im Zellbereich A1 bis A10 zurück, wobei die ausgeblendeten Zeilen oder Filter ignoriert werden.

Die Subtotal-Funktion kann in vielen Fällen nützlich sein, insbesondere bei der Arbeit mit großen und komplexen Datasets. Es ermöglicht Ihnen, die für die Entscheidungsfindung erforderlichen Informationen schnell und einfach zu analysieren und zu verarbeiten.

Anwenden der Subtotal-Funktion in Excel VBA

Mit der Funktion Subtotal in Excel VBA können Sie verschiedene Berechnungsvorgänge für einen ausgewählten Bereich von Zellen im Arbeitsblatt der Anwendung ausführen. Es kann verwendet werden, um die Summe, den Mittelwert, den minimalen oder maximalen Wert und andere statistische Operationen zu zählen.

Um die Funktion Subtotal in Excel VBA anzuwenden, müssen Sie die Nummer des auszuführenden Vorgangs und den Zellbereich angeben, für den die Berechnung durchgeführt werden soll. Die Operationsnummer wird durch vordefinierte Konstanten wie xlSum, xlAverage, xlMin, xlMax und andere definiert.

Hier ist ein Beispiel für die Verwendung der Funktion Subtotal zum Zählen der Summe von Zahlen im Bereich A1:A10:

Sub CalculateTotal()Dim rng As RangeSet rng = Range("A1:A10")Dim total As Doubletotal = Application.WorksheetFunction.Subtotal(xlSum, rng)MsgBox "Сумма чисел: " & totalEnd Sub

In diesem Beispiel wählen wir den Zellbereich A1:A10 mit dem Range-Objekt aus und speichern ihn in einer rng-Variablen. Dann verwenden wir die Funktion Subtotal, um die Summe der Zahlen in diesem Bereich mit einer vordefinierten xlSum-Konstante zu berechnen. Das Ergebnis wird in der Variablen total gespeichert.

Schließlich geben wir das Ergebnis der Summe der Zahlen als Nachricht mit der MsgBox-Funktion aus.

Außerdem kann die Funktion Subtotal nützlich sein, wenn Sie mit Filtern in Excel arbeiten. Beispielsweise können Sie die Funktion Subtotal verwenden, um die Summe von Zahlen nur für gefilterte Zeilen in einem Bereich zu zählen.

Insgesamt bietet die Subtotal-Funktion umfangreiche Funktionen zum Ausführen verschiedener Berechnungen für ausgewählte Zellbereiche in Excel VBA. Es kann verwendet werden, um Berechnungen und Datenverarbeitung zu automatisieren, wodurch die Arbeit mit Anwendungsblättern effizienter und bequemer wird.

OperationsnummerDie Beschreibung
1Summe
2Summe einschließlich ausgeblendeter Zeilen
3Summe, ohne versteckte Zeilen
4Anzahl
5Durchschnittswert
6Maximalwert
7Minimalwert