Zum Hauptinhalt springen

Wie kann ich eine Sammlung in VBA Excel auf Null setzen

Sammlungen in Excel VBA werden zum Speichern und Verwalten eines Datasets verwendet. Es kann jedoch manchmal notwendig sein, eine Sammlung auf Null zu setzen, dh alle Elemente daraus zu entfernen. Das Zurücksetzen einer Sammlung kann nützlich sein, wenn Sie mit einer leeren Sammlung beginnen oder einen bestimmten Datenzustand erfassen möchten. In diesem Artikel betrachten wir mehrere Möglichkeiten, wie Sie eine Sammlung in VBA Excel auf Null setzen können.

Die erste Methode besteht darin, eine For Each-Schleife zu verwenden. Mit dieser Schleife können Sie alle Elemente der Sammlung durchlaufen und löschen, während sie durchlaufen. Mit diesem Code können Sie beispielsweise die Auflistung von Sheets-Objekten auf Null zurücksetzen :

For Each sh In ThisWorkbook.Sheets

ThisWorkbook.Sheets(sh.Name).Delete

Next sh

Die zweite Methode ist die Verwendung der Clear-Methode. Viele Sammlungen in Excel VBA verfügen über eine Clear-Methode, mit der Sie alle Elemente mit einem einzigen Befehl aus der Auflistung entfernen können. Mit diesem Code wird beispielsweise die Auflistung von Range-Objekten gelöscht :

Dim rng As Range

Set rng = ThisWorkbook.Sheets("Sheet1").UsedRange

rng.Clear

Wie Sie sehen können, kann das Zurücksetzen einer Sammlung in Excel VBA eine ziemlich einfache Aufgabe sein, wenn Sie die geeignete Methode verwenden. Wählen Sie diejenige aus, die für Ihre Aufgabe besser geeignet ist und die Arbeit mit der Datenliste erleichtert.

Wie bereinige ich alle Auflistungselemente in VBA Excel

In Excel VBA können Sie Sammlungen zum Speichern und Verwalten einer Sammlung von Elementen verwenden. Sammlungen sind Datenstrukturen, mit denen Sie viele Objekte desselben Typs speichern können. In einigen Fällen müssen Sie möglicherweise alle Elemente der Auflistung bereinigen.

Um alle Elemente einer Sammlung in VBA Excel zu bereinigen, können Sie den folgenden Ansatz verwenden:

    Deklarieren Sie eine Variable vom Typ Collection. Zum Beispiel:

Dim myCollection As CollectionSet myCollection = New Collection
myCollection.Add "элемент 1"myCollection.Add "элемент 2"myCollection.Add "элемент 3"
Do While myCollection.Count > 0myCollection.Remove 1Loop

Auf diese Weise können Sie alle Elemente einer Sammlung in VBA Excel mit einer Schleife löschen, die die Elemente löscht, bis die Sammlung leer ist. Dies ist nützlich, wenn Sie Speicher freigeben oder eine neue Sammlung mit anderen Elementen erstellen müssen. Stellen Sie sicher, dass Sie verstehen, wie Ihre Sammlung funktioniert und welche Elemente der Sammlung hinzugefügt werden, um Datenverluste beim Bereinigen der Sammlung zu vermeiden.