Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

7 Декабрь 2021, 17:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Здесь можно поблагодарить участников форума Улыбка
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Сравнение двух разных объектов на равенство  (Прочитано 396 раз)
0 Пользователей и 1 Гость смотрят эту тему.
eeigor
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 752



« Стартовое сообщение: 24 Ноябрь 2021, 14:13 »

Сравниваю два объекта com.sun.star.table.CellRangeAddress.
Вот так работает:
If oTables(0).SourceRange Is oAddress Then

А вот так нет:
If Not oTables(0).SourceRange Is oAddress Then
Почему? Как правильно? Что не так с Not?

В результате нужный вызов записываю в ветку Else:
Код:
If oTables(0).SourceRange Is oAddress Then
Else: Call RefreshPivotTables
End If

Впрочем, это не работает. С Is без Not просто не выдаёт ошибку, а всегда выполняется вызов RefreshPivotTables. C Not выдаёт ошибку.
« Последнее редактирование: 24 Ноябрь 2021, 14:19 от eeigor » Записан

Ubuntu 18.04 LTS • LO 7.2.2.2 Community
mikekaganski
Гуру
*******
Online Online

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 2 396


« Ответ #1: 24 Ноябрь 2021, 15:11 »

If Not oTables(0).SourceRange Is oAddress Then

Правильно:

Код:
If Not (oTables(0).SourceRange Is oAddress) Then
Записан

С уважением,
Михаил Каганский
sokol92
Форумчанин
***
Online Online

Пол: Мужской
Сообщений: 625


WWW
« Ответ #2: 24 Ноябрь 2021, 17:58 »

C Not нужно быть аккуратным в Basic.
Предыдущее замечание Михаила относится и к конструкции Is Nothing.
Записан

Владимир.
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!