Этот пример иллюстрирует Сбор областей в Excel VBA. Ниже мы ограничили диапазон («B2: C3, C5: E5»). Этот диапазон имеет две области. Запятая разделяет две области.
Поместите командную кнопку на свой рабочий лист и добавьте следующие строки кода:
1. Сначала мы объявляем два объекта Range. Мы называем объекты Range rangeToUse и singleArea.
Dim rangeToUse As Range, singleArea As Range
2. Мы инициализируем объект Range rangeToUse с помощью Range ("B2: C3, C5: E5").
Установить rangeToUse = Range ("B2: C3, C5: E5")
3. Чтобы подсчитать количество областей rangeToUse, добавьте следующую строку кода:
MsgBox rangeToUse.Areas.Count
Результат:
4. Вы можете ссылаться на различные области rangeToUse, используя значения индекса. Следующая строка кода подсчитывает количество ячеек первой области.
MsgBox rangeToUse.Areas (1) .Count
Результат:
5. Вы также можете перебрать каждую область rangeToUse и подсчитать количество ячеек в каждой области. Приведенный ниже макрос делает свое дело.
Для каждого singleArea In rangeToUse.Areas
MsgBox singleArea.Count
Следующий сингл
Результат:
Для практического примера сбора областей см. Наш пример программы Compare Ranges.