![](https://codky.com/wp-content/uploads/2024/11/2627-1024x576.png)
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.