Wie verwende ich die Erase-Anweisung in VBA?

In VBA (Visual Basic for Applications) wird die `Erase`-Anweisung verwendet, um Arrays zu leeren. Die genaue Funktion von `Erase` hängt davon ab, ob es sich um ein statisches oder ein dynamisches Array handelt:

  • Dynamische Arrays: Wenn Sie `Erase` auf ein dynamisches Array anwenden, wird der Speicher freigegeben, den das Array belegt. Das Array wird auf eine unverbrauchte Größe zurückgesetzt und Sie müssen es erneut mit `ReDim` dimensionieren, bevor Sie es wieder verwenden können.
  • Statische Arrays: Bei statischen Arrays werden alle Elemente auf ihren Standardwert zurückgesetzt (0 für numerische Datentypen, leere Zeichenfolgen für String-Typen und `Nothing` für Objektreferenzen).

Syntax:

Erase arrayName

Beispiele:

  Dim dynamicArray() As Integer
  ReDim dynamicArray(1 To 10)
  
  ' Füllen des Arrays mit Werten
  For i = 1 To 10
      dynamicArray(i) = i
  Next i

  ' Array löschen
  Erase dynamicArray

  ' Nach dem Löschen muss das Array erneut dimensioniert werden
  ReDim dynamicArray(1 To 5)
  Dim staticArray(1 To 5) As Integer
  
  ' Füllen des Arrays mit Werten
  For i = 1 To 5
      staticArray(i) = i
  Next i

  ' Array löschen
  Erase staticArray
  
  ' Die Elemente des statischen Arrays sind jetzt alle auf 0 gesetzt
  • Dynamisches Array zurücksetzen:
  • Statisches Array zurücksetzen:

Wichtige Hinweise:

  • `Erase` kann sowohl für ein- als auch für mehrdimensionale Arrays verwendet werden.
  • Bei der Arbeit mit Objektreferenzen werden diese durch `Erase` auf `Nothing` zurückgesetzt.

Vergewissern Sie sich, dass Sie den Unterschied zwischen statischen und dynamischen Arrays sowie deren Handhabung mit `Erase` verstanden haben, um Ihren Code effektiv und fehlerfrei zu gestalten.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project