Содержание
Возвращает тип данных Long , содержащий самый крупный доступный нижний индекс для указанного измерения массива. Returns a Long data type containing the largest available subscript for the indicated dimension of an array.
Синтаксис Syntax
UBound (аррайнаме, [ измерение ]) UBound(arrayname, [ dimension ])
Синтаксис функции UBound состоит из следующих частей. The UBound function syntax has these parts.
Часть Part | Описание Description |
---|---|
аррайнаме arrayname | Обязательно. Required. Имя переменной массива; соответствует стандарту соглашений об именовании переменных. Name of the array variable; follows standard variable naming conventions. |
аналитики dimension | Необязательный аргумент. Variant (Long). Optional; Variant (Long). Целое число, указывающее, какая верхняя граница измерения возвращается. Whole number indicating which dimension’s upper bound is returned. Используйте 1 для первого измерения, 2 для второго и т. д. Use 1 for the first dimension, 2 for the second, and so on. Если размер измерения опущен, то предполагается, что используется 1. If dimension is omitted, 1 is assumed. |
Примечания Remarks
Функция UBound используется с функцией LBound для определения размера массива. The UBound function is used with the LBound function to determine the size of an array. Используйте функцию LBound для поиска нижнего предела измерения массива. Use the LBound function to find the lower limit of an array dimension.
UBound возвращает следующие значения для массива с этими измерениями: UBound returns the following values for an array with these dimensions:
Statement Statement | Возвращаемое значение Return Value |
---|---|
UBound(A, 1) | 100 100 |
UBound(A, 2) | 4 3 |
UBound(A, 3) | SP4 4 |
Пример Example
В этом примере функция UBound используется для определения самого большого доступного индекса указанного измерения массива. This example uses the UBound function to determine the largest available subscript for the indicated dimension of an array.
См. также See also
Поддержка и обратная связь Support and feedback
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Have questions or feedback about Office VBA or this documentation? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь. Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.
Функции LBound, UBound
Функции LBound, UBound возвращают нижнее и верхнее граничные значения индексов статического или динамического массива.
LBound (array_Name [, dimension])
UBound (array_Name [, dimension])
array_Name — имя массива
dimension — целое число (необязательный аргумент). Определяет измерение массива, для которого надо получить верхний или нижний предел. При отсутствии dimension возвращается предел для первого измерения массива.
Нижеприведенный листинг демонстрирует использование функций LBound, UBound:
Очистка и удаление массивов при помощи Erase
Оператор Erase позволяет выполнять очистку для статических массивов и удаление — для динамических.
Когда элементы массива заполнены, данные в массиве остаются до тех пор, пока пользователь не присвоит новые значения элементам массива или пока VBA не освободится от массива. Зачастую бывает, что в дальнейших вычислениях динамический массив ни при каких обстоятельствах использоваться не будет, поэтому нецелесообразно "держать" его в памяти компьютера, т.к. это может сказаться на скорости работы программы. Или же может понадобиться очистить все значения в статическом массиве, устанавливая числовые значения на 0, а строковые — на пустые строки. Это можно осуществить при помощи вложенных циклов — как было показано на предыдущем уроке. Но, можно сделать гораздо проще:
Данный оператор обнуляет (если массив статический) или очищает (если массив динамический) массив My_Array.
Оператор Erase удаляет из памяти динамические массивы, освобождая область памяти, ранее используемую этим массивом. При удалении динамического массива с помощью оператора Erase необходимо повторно создать массив с помощью оператора ReDim перед тем, как можно будет использовать этот определенный динамический массив снова.
Поведение оператора Erase для статических массивов зависит от конкретного типа элементов массива (см. таблицу):
Тип статического массива | Действие оператора Erase |
Любой числовой тип | Устанавливает элементы массива на 0 |
Любой строковый тип | Устанавливает элементы массива на строку нулевой длины, а для строк фиксированной длины — как все символы пробела |
Тип Variant | Устанавливает элементы массива на Empty |
Тип Object | Устанавливает элементы массива на Nothing |
Любой пользовательский тип | Устанавливает каждую переменную в пользовательском типе индивидуально: численные — на 0; строковые — на строки нулевой длины; Variant — Empty; Object — Nothing |
В начало страницы
В начало страницы
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Возвращает значение типа Long, содержащее верхнюю границу размерности для указанного измерения массива.
Функция UBound имеет следующие аргументы:
Обязательный аргумент. Имя переменной массива; должно удовлетворять стандартным соглашениям об именовании.
Необязательный аргумент. Variant ( Long). Целое число, указывающее, для какого измерения массива должна быть возвращена верхняя граница. Для первого измерения следует задать значение 1, для второго — 2 и т. д. Если аргумент измерение не указан, используется значение 1.
Функция UBound используется в сочетании с функцией LBound для определения размера массива. Функция LBound позволяет определить нижнюю границу измерения массива.
Функция UBound возвращает следующие значения для массива с указанными изменениями: