Trouble with this code

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I'm not sure what is wroing with this code, my goal is to clear any text in
Column E that does not match "HO". Any help is appreciated. Thanks

LastRow = Cells(Rows.Count, "E").End(xlUp).Row
For RowNdx = LastRow To 1 Step -1
If StrComp(Cells(RowNdx, "E"), "HO", vbTextCompare) Then
Rows(RowNdx)ActiveCell.ClearContents
End If
Next RowNdx
 
There isn't an activecell as such since you aren't selecting cells
through this loop.
this code deletes the rows contents if cell isn't = HO


replace with Range("E" & RowNdx).ClearContents for just the cewll in
column E


Sub clearnotHO()
LastRow = Cells(Rows.Count, "E").End(xlUp).Row
For RowNdx = LastRow To 1 Step -1
If StrComp(Cells(RowNdx, "E"), "HO", vbTextCompare) Then
Rows(RowNdx).ClearContents
End If
Next RowNdx
End Sub

somethinglikeant
 
why not just

For RowNdx = LastRow To 1 Step -1
if ucase(Cells(RowNdx, "E"))<> "HO" then cells(rowndx,"e").clearcontents
next
 
From the number of similar posts you've made, it kind of looks like you're
having trouble with StrComp.

Maybe just checking for equal would be easier to understand/implement.

LastRow = Cells(Rows.Count, "E").End(xlUp).Row
For RowNdx = LastRow To 1 Step -1
If lcase(Cells(RowNdx, "E").value) = lcase("HO") then
'do nothing, it's HO.
else
cells(rowndx,"E").ClearContents
End If
Next RowNdx


By comparing lcase() with lcase(), it's the same as the vbTextCompare.
 
Thanks Dave, yes this was easier...fear not, next week I attend a VBA Class
for 10 days! Yea!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top