Перейти к содержимому
Наше приложение «Дешевые авиабилеты» в AppGallery >>

VBA Excel. Метод Application.Intersect (пересечение диапазонов)

    Определение блока ячеек, расположенного на пересечении двух и более диапазонов, с помощью метода Application.Intersect из кода VBA Excel. Пример.

    Описание

    Application.Intersect – это метод VBA Excel, возвращающий прямоугольный объект Range, находящийся на пересечении двух или более указанных диапазонов.

    Если общие ячейки для всех заданных диапазонов не обнаружены, метод Application.Intersect возвращает значение Nothing.

    Если в качестве аргументов метода Application.Intersect указаны диапазоны из разных листов, возвращается ошибка.

    Синтаксис

    • Arg1, Arg2 – обязательные аргументы, представляющие из себя пересекающиеся диапазоны (объекты Range).
    • Arg3, …, Arg30* – необязательные аргументы, представляющие из себя пересекающиеся диапазоны (объекты Range).

    * Допустимо использование до 30 аргументов включительно.

    Пример

    Строку

    можно записать без использования переменных так:

    Есть и другой способ определения пересечения диапазонов. Он заключается в использовании свойства Range объекта Worksheet*:

    Но у этого способа есть существенных недостаток – свойство Range возвращает ошибку, если пересечение указанных диапазонов не существует. Поэтому преимущество остается за методом Application.Intersect, который, в этом случае, возвратит значение Nothing.

    * Если код VBA Excel работает со свойствами активного листа, объект Worksheet можно не указывать. Например, строка MsgBox Name отобразит имя активного листа.

    Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.