Страницы: 1
RSS
Проверить отсутствие заполнения элемента массива
 
Доброго утра. С отсылкой к архивной теме, подскажите пожалуйста - как можно проверить отсутствие заполнения элемента массива?
Например имея двумерный массив A(i, j), и частично специально заполненный "" (ничем) и другими данными в т.ч..
Код
If A(i, j) = Empty Then msgbox "Элемент пуст" 'не подходит т.к. "" считается за Empty
If Not Not A(i, j) Then msgbox "Элемент пуст" 'Ругается на разность типов данных

Или по умолчанию, при создании массива, все его элементы = "" ?

Изменено: Shama - 02.12.2022 09:05:33
Не перестаю удивляться возможностям excel и VBA.
 
Shama, здравствуйте
Shama, попробуйте (не тестил) If IsEmpty(A(i, j)) Then
Если не подойдёт, то поясняйте в файле-примере, откуда получен массив. Вариативный массив при инициализации по умолчанию заполнен Empty, а другие типв - в соответствии с типами.
Изменено: Jack Famous - 02.12.2022 09:37:21
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Код
If IsEmpty(A(i, j)) or A(i, j) Is Nothing Then ' A(i, j) не заполнен
а вообще правильный ответ это вопрос: а как у вас обьявлен массив А?
а уже после получения ответа на этот вопрос можно сформулировать ответ на ваш начальный вопрос
Изменено: Ігор Гончаренко - 02.12.2022 10:07:01
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Jack Famous, Ігор Гончаренко, Здравствуйте, и в очередной раз большое спасибо.
Код
IsEmpty(A(i, j)) 

Работает отлично!

Цитата
написал:
а вообще правильный ответ это вопрос: а как у вас обьявлен массив А?
Массив динамический, не типизированный:

Код
Dim A()

Хотел что бы отдельный макрос красиво оформлял в таблицу список сообщений для пользователя о своей работе.
Сначала столкнулся с проблемой, что справочник нельзя сортировать по ключам, что бы разделить сообщения по своим видам.
Решил данные справочника перезаписывать в двумерный массив и сразу вставлять таблицей (так должно быть быстрее, чем по строкам и по ячейкам)
Не перестаю удивляться возможностям excel и VBA.
Страницы: 1
Наверх