Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have haggled w/ this forever it seems. I want a universal (old and new
excel versions) way to see if a cell has anything in it. It may be text, number, or anything. in excel2000, ...if cells(i,j) < 0 then... worked, but it didn't work in an earlier version (I think 97). ....if application.isempty(cells(i,j)) then... doesn't work, but ...if isempty(cells(i,j)) then... works in 2000. This is interesting b/c I have come across instances where putting 'application' in front of a command allows it to work in 97, while it worked either way in 2000. If I don't see anything in the cell, I expect it to detect this empty field and skip over it, regardless of what version of excel the user has and regardless of whether I am looking for text or numbers or anything else. Is there a sure-fire way to accomplish this? thanks, mike allen |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
use:
not isempty(Range("a1")) or Range("a1")<"" ..value is optional as it's the default property of the range keepITcool < email : keepitcool chello nl (with @ and .) < homepage: http://members.chello.nl/keepitcool "mike allen" wrote: I have haggled w/ this forever it seems. I want a universal (old and new excel versions) way to see if a cell has anything in it. It may be text, number, or anything. in excel2000, ...if cells(i,j) < 0 then... worked, but it didn't work in an earlier version (I think 97). ...if application.isempty(cells(i,j)) then... doesn't work, but ...if isempty(cells(i,j)) then... works in 2000. This is interesting b/c I have come across instances where putting 'application' in front of a command allows it to work in 97, while it worked either way in 2000. If I don't see anything in the cell, I expect it to detect this empty field and skip over it, regardless of what version of excel the user has and regardless of whether I am looking for text or numbers or anything else. Is there a sure-fire way to accomplish this? thanks, mike allen |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I've always used "if(len(cells(i,j))=0"
Stan "mike allen" wrote in message ... I have haggled w/ this forever it seems. I want a universal (old and new excel versions) way to see if a cell has anything in it. It may be text, number, or anything. in excel2000, ...if cells(i,j) < 0 then... worked, but it didn't work in an earlier version (I think 97). ...if application.isempty(cells(i,j)) then... doesn't work, but ...if isempty(cells(i,j)) then... works in 2000. This is interesting b/c I have come across instances where putting 'application' in front of a command allows it to work in 97, while it worked either way in 2000. If I don't see anything in the cell, I expect it to detect this empty field and skip over it, regardless of what version of excel the user has and regardless of whether I am looking for text or numbers or anything else. Is there a sure-fire way to accomplish this? thanks, mike allen |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
run this and never do it again.. ..although it IS fractional:)
Sub ff() Dim t!, i&, b As Boolean t = Timer For i = 1 To 100000 b = IsEmpty(Cells(1, 1)) Next Debug.Print Timer - t, "e" t = Timer For i = 1 To 100000 b = Cells(1, 1) = "" Next Debug.Print Timer - t, "-" t = Timer For i = 1 To 100000 b = Len(Cells(1, 1)) = 0 Next Debug.Print Timer - t, "L" End Sub keepITcool < email : keepitcool chello nl (with @ and .) < homepage: http://members.chello.nl/keepitcool "Stan Scott" wrote: I've always used "if(len(cells(i,j))=0" Stan "mike allen" wrote in message ... I have haggled w/ this forever it seems. I want a universal (old and new excel versions) way to see if a cell has anything in it. It may be text, number, or anything. in excel2000, ...if cells(i,j) < 0 then... worked, but it didn't work in an earlier version (I think 97). ...if application.isempty(cells(i,j)) then... doesn't work, but ...if isempty(cells(i,j)) then... works in 2000. This is interesting b/c I have come across instances where putting 'application' in front of a command allows it to work in 97, while it worked either way in 2000. If I don't see anything in the cell, I expect it to detect this empty field and skip over it, regardless of what version of excel the user has and regardless of whether I am looking for text or numbers or anything else. Is there a sure-fire way to accomplish this? thanks, mike allen |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
That assumes the cells are really empty. The time difference is hardly
significant enough to warrant "never do it again" and len(trim(cells(1,1)) is more robust in situations where people clear cells with a spacebar. Just another opinion. -- Regards, Tom Ogilvy "keepITcool" wrote in message ... run this and never do it again.. ..although it IS fractional:) Sub ff() Dim t!, i&, b As Boolean t = Timer For i = 1 To 100000 b = IsEmpty(Cells(1, 1)) Next Debug.Print Timer - t, "e" t = Timer For i = 1 To 100000 b = Cells(1, 1) = "" Next Debug.Print Timer - t, "-" t = Timer For i = 1 To 100000 b = Len(Cells(1, 1)) = 0 Next Debug.Print Timer - t, "L" End Sub keepITcool < email : keepitcool chello nl (with @ and .) < homepage: http://members.chello.nl/keepitcool "Stan Scott" wrote: I've always used "if(len(cells(i,j))=0" Stan "mike allen" wrote in message ... I have haggled w/ this forever it seems. I want a universal (old and new excel versions) way to see if a cell has anything in it. It may be text, number, or anything. in excel2000, ...if cells(i,j) < 0 then... worked, but it didn't work in an earlier version (I think 97). ...if application.isempty(cells(i,j)) then... doesn't work, but ...if isempty(cells(i,j)) then... works in 2000. This is interesting b/c I have come across instances where putting 'application' in front of a command allows it to work in 97, while it worked either way in 2000. If I don't see anything in the cell, I expect it to detect this empty field and skip over it, regardless of what version of excel the user has and regardless of whether I am looking for text or numbers or anything else. Is there a sure-fire way to accomplish this? thanks, mike allen |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
"Tom Ogilvy" wrote:
That assumes the cells are really empty. THIS was the question: "way to see if a cell has anything in it. It may be text, number, or anything." The time difference is hardly significant enough to warrant "never do it again" I said "..although it IS fractional:)" the smiley was there for a reason... len(trim(cells(1,1)) is more robust in situations where people clear cells with a spacebar. Just another opinion. When testing for empty or 'spaced' cells, your solution is (as always) impeccable <vbg keepITcool < email : keepitcool chello nl (with @ and .) < homepage: http://members.chello.nl/keepitcool |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Not to be argumentative, but
the real question was "If I don't see anything in the cell, I expect it to detect this empty field and skip over it, regardless of what version" your quote referred to peripheral information -- the fact that he could be looking at cells that contain anything. So if it looks empty, regardless of what it contains, treat it as empty. -- Regards, Tom Ogilvy "keepITcool" wrote in message ... "Tom Ogilvy" wrote: That assumes the cells are really empty. THIS was the question: "way to see if a cell has anything in it. It may be text, number, or anything." The time difference is hardly significant enough to warrant "never do it again" I said "..although it IS fractional:)" the smiley was there for a reason... len(trim(cells(1,1)) is more robust in situations where people clear cells with a spacebar. Just another opinion. When testing for empty or 'spaced' cells, your solution is (as always) impeccable <vbg keepITcool < email : keepitcool chello nl (with @ and .) < homepage: http://members.chello.nl/keepitcool |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I did something similar to this recently, and I just used Do Until:
Do Until len(Activecell.Value)<1 'Your Code Loop It should probably work across all versions. cheer -- Message posted from http://www.ExcelForum.com |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
How to detect characters in cell? | Excel Discussion (Misc queries) | |||
Is there a function to detect changes in any given cell? | Excel Worksheet Functions | |||
UDF - detect cell border | Excel Programming | |||
Detect when Active Cell Changes | Excel Programming | |||
Detect whether a row is completely empty | Excel Programming |