Ho usato il seguente codice VBA:Qual è la differenza tra = Empty e IsEmpty() in VBA (Excel)?
Do While .Cell(i,1) <> Empty
' doing things
i = i+1
Loop
per scorrere le colonne (con i valori Doppia/intero) in Excel. Poi ho trovato un caso in cui il test restituisce False ogni volta che il valore della cella è 0. Non ho idea di quale sia la differenza tra questo caso e quelli di lavoro.
Se cambio il test per:
Do While Not IsEmpty(.Cell(i,1))
..
Loop
funziona benissimo. Quindi la mia domanda è: qual è la differenza tra come vengono valutati IsEmpty() e = Empty? In quali casi will = Empty restituisce True per le celle con valore 0?
'Range ("A2") = 0 ''? Range ("A2") = Empty' 'true''? IsEmpty (Range ("A2")) '' False' Mi piacerebbe vedere un caso in cui un valore di cella di 0 '= Empty' restituisce False! –
Hai ragione. Vedo ora che la serie che ho visto prima non contiene zeri (ho appena supposto che lo abbiano fatto), quindi il comportamento è coerente. – Christian