Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Оператор "Is" в VBA возвращает "False" для одинаковых диапазонов
 
Цитата
Alec Perle написал:
ObjPtr
Ага, вот откуда ноги растут!) Проверил ещё для объектов, вложенных в Range, - результат аналогичный.

Всем большое спасибо!
Изменено: ControlAltExcel - 13.12.2019 10:07:24 (Цитата указала неверного автора сообщения)
Оператор "Is" в VBA возвращает "False" для одинаковых диапазонов
 
Юрий М,
Можно =) Вопрос в том - почему это происходит и есть ли ещё объекты, для которых это происходит.
Оператор "Is" в VBA возвращает "False" для одинаковых диапазонов
 
vikttur,
Но Is работает только с объектами. Значение для Range - это просто свойство по умолчанию. И если сравнивать именно значения диапазона с помощью Is, возникнет ошибка.
Оператор "Is" в VBA возвращает "False" для одинаковых диапазонов
 
vikttur,

И в это же время, изменив 7-ю строку:
Код
Debug.Print rRng Is Range("A1")
- будет False. Хочется понять причину.
Оператор "Is" в VBA возвращает "False" для одинаковых диапазонов
 
Доброго времени суток!

Хочу разобраться в работе оператора Is в VBA.

Следующие выражения возвращают True:
Код
ThisWorkbook Is ThisWorkbook
ActiveSheet Is ActiveSheet
Но с объектом Range дела обстоят иначе:
Код
Range("A1") Is Range("A1")
- данное выражение принимает значение False.

В связи с этим есть два вопроса:
1) Почему?
2) Есть ли ещё подобные объекты в модели VBA, для которых оператор Is работает "нелогично"?

P.S. О возможности сравнения адресов диапазонов знаю, интересна здесь именно механика оператора Is.

Спасибо!
Страницы: 1
Наверх