View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Bob Phillips Bob Phillips is offline
external usenet poster
 
Posts: 10,593
Default if statement conditions

When it does a text compare, it compares character by character, not the
whole number. So 7 is 260 because the 7 is greater than the 2.

--
---
HTH

Bob

(there's no email, no snail mail, but somewhere should be gmail in my addy)



"Cheer-Phil-ly" wrote in message
...
In a file that I inherited there is the following code....

For Each cell In Range("RawDataList")
fico = cell.Offset(0, 3)

If fico "" And fico < "150" Then 'Bucket 1
PSICounts(0) = PSICounts(0) + 1

ElseIf fico = "150" And fico <= "199" Then 'Bucket 2
PSICounts(1) = PSICounts(1) + 1

ElseIf fico = "200" And fico <= "259" Then 'Bucket 3
PSICounts(2) = PSICounts(2) + 1

ElseIf fico = "260" Then 'Bucket 4
PSICounts(12) = PSICounts(12) + 1

Else
'Do nothing
End If

Next cell

if fico is greater than 99 then it gets added to the correct bucket, but
if
fico is under 100 (it should go into bucket 1), it doesn't, but rather it
goes into bucket 4.

I realize that the if statements have the values in double quotes, but why
would some fico numbers work and some don't.

If I take out the double quotes in the if statement then it seems to work
okay, which is understandable. I need to know why as soon as possilbe...
also is there something that is being done wrong in the beginning if
statement?