Я использовал следующий код VBA:
Do While .Cell(i,1) <> Empty
' doing things
i = i+1
Loop
для итерации по столбцам (с двойными/целыми значениями) в Excel. Затем я нашел случай, когда тест оценивается как False, когда значение ячейки равно 0. Я не знаю, какая разница между этим случаем и рабочими.
Если я изменил тест на:
Do While Not IsEmpty(.Cell(i,1))
..
Loop
он отлично работает. Поэтому мой вопрос: в чем разница между оценкой IsEmpty() и = Empty? В каких случаях будет = Empty оценивать значение True для ячеек со значением 0?