Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2009, 12:14   #1
Bezdar
Форумчанин
 
Регистрация: 03.06.2008
Сообщений: 213
По умолчанию И снова про подсчет строк

К своей недавней и соседней теме...
Профи, объясните, пожалуйста, каким это образом какое-то специфичное форматирование ячеек влияет на некорректный подсчет заполненных строк?
Или что все таки влияет?
Тема так и осталась для меня актуально-нерешенной.
Bezdar вне форума Ответить с цитированием
Старый 23.03.2009, 12:56   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

форматирование не влияет. влияют данные, которые там находятся.
формула =если(чтото=нечто; тоэто; ""), когда чтото и нечто не будут равны между собой вернет строку нулевой длины. Но это уже не пустая ячейка - это ячейка с данными, хотя на вид - там ничего нет. ЕПУСТО покажет что там не пусто, СЧЕТЗ засчитает ее как ячейку с значением.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 23.03.2009, 15:22   #3
Bezdar
Форумчанин
 
Регистрация: 03.06.2008
Сообщений: 213
По умолчанию

макросом ...range().value можно проверить ячейку (визуально пустую) на наличие значения?
Bezdar вне форума Ответить с цитированием
Старый 23.03.2009, 15:32   #4
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Лучше так:
Код:
Sub test()
    If IsEmpty([a1]) Then MsgBox "ячейка A1 пустая" Else MsgBox "в ячейке что-то есть :)"
End Sub
Ну или так:
Код:
If [a1].Value = "" And Not [a1].HasFormula Then MsgBox "ячейка A1 пустая"

Последний раз редактировалось EducatedFool; 23.03.2009 в 15:35.
EducatedFool вне форума Ответить с цитированием
Старый 23.03.2009, 16:49   #5
Bezdar
Форумчанин
 
Регистрация: 03.06.2008
Сообщений: 213
По умолчанию

Кажется, я поняла, в чем проблема. Ошибка возникает тогда, когда строка является первой и (она же) последней в указанном диапазоне ячеек. Проверяю последнюю заполненную ...Range().end(xlDown).

Может, кто прокомментирует? Для меня это более чем непонятно...
Bezdar вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Матрица A состоит из 8 строк и 6 столбцов. вычесть из всех её строк, начиная со второй, первую строку Dimak24 Помощь студентам 1 19.12.2008 15:45
Снова про адрес переменной Pedro Общие вопросы Delphi 2 17.12.2008 21:53
У меня вопрос про базы данных,а точнее про таблицы!!! Alexij Общие вопросы Delphi 1 13.04.2008 23:24
выбор по нескольким параметрам и подсчет кол-ва выбранных строк Oleshka Microsoft Office Excel 4 29.02.2008 11:38
Excel max 256 строк VS user надо 300 строк Exo Microsoft Office Excel 3 10.01.2008 17:14