Оператор Erase

Повторно инициализирует элементы массивов фиксированного размера и освобождает место для хранения динамического массива.

Синтаксис

Очисткасписка массивов

Обязательный аргументarraylist — это одна или несколько переменных массива с разделителями-запятыми для удаления.

Замечания

Оператор удаления Erase ведет себя по-разному в зависимости от того, какой массив используется: с фиксированным размером (обычный) или динамический. Erase не освобождает память для массивов фиксированного размера. Erase задает элементы фиксированного массива следующим образом.

Тип массива Влияние очистки на элементы фиксированного массива
Фиксированный числовой массив Задает нулевое значение для каждого элемента.
Фиксированный массив строк (переменной длины) Задает строку нулевой длины ("") для каждого элемента.
Фиксированный массив строк (фиксированной длины) Задает нулевое значение для каждого элемента.
Фиксированный вариантный массив Задает пустое значение для каждого элемента.
Массив типов, определяемых пользователем Задает для каждого элемента значение как для отдельной переменной.
Массив объектов Задает особое значение Nothing (Ничего) для каждого элемента.

Erase освобождает память, используемую динамическими массивами. Прежде чем программа снова сможет ссылаться на динамический массив, она должна повторно объявить размеры переменной массива с помощью инструкции ReDim .

Пример

В этом примере оператор Erase используется для повторной инициализации элементов массивов фиксированного размера и отмены выделения места для хранения динамического массива.

' Declare array variables. 
Dim NumArray(10) As Integer ' Integer array. 
Dim StrVarArray(10) As String ' Variable-string array. 
Dim StrFixArray(10) As String * 10 ' Fixed-string array. 
Dim VarArray(10) As Variant ' Variant array. 
Dim DynamicArray() As Integer ' Dynamic array. 
ReDim DynamicArray(10) ' Allocate storage space. 
Erase NumArray ' Each element set to 0. 
Erase StrVarArray ' Each element set to zero-length 
 ' string (""). 
Erase StrFixArray ' Each element set to 0. 
Erase VarArray ' Each element set to Empty. 
Erase DynamicArray ' Free memory used by array. 

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.