ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Delete worksheet row based on condition (https://www.excelbanter.com/excel-programming/396196-delete-worksheet-row-based-condition.html)

miek

Delete worksheet row based on condition
 
Could someone help get me started on with the following:

I have text in column B that has a "P", "S", or "".
Number of rows varies, but ends with an empty row.

How do I step through each row and test if column B
has a value < "P", delete that row?

Thanks for any help

Bob Umlas

Delete worksheet row based on condition
 
Sub DeleteNotP()
'do it backwards so deleting rows doesn't mess this up!
for i=range("B65536").end(xlup).Row to 1 step -1
if cells(i,2).value < "P" then rows(i).Delete
Next
End Sub
Bob Umlas
Excel MVP


"miek" wrote in message
...
Could someone help get me started on with the following:

I have text in column B that has a "P", "S", or "".
Number of rows varies, but ends with an empty row.

How do I step through each row and test if column B
has a value < "P", delete that row?

Thanks for any help




JLGWhiz

Delete worksheet row based on condition
 
The delay function should be put at the top of the module. It allows time
for the delete action to complete before going to the next cell. Otherwise,
some of the rows might not delete.

Public Function HalfSecDly()
s = Timer + 0.1
Do While Timer < s
DoEvents
Loop
End Function

Sub delRw()
lr = Cells(Rows.Count, 2).End(xlUP).Row
For each c in Range("B2:B" & lr)
If c < "P" Then
c.EntireRow.Delete
HalfSecDly
End If
Next
End Sub

"miek" wrote:

Could someone help get me started on with the following:

I have text in column B that has a "P", "S", or "".
Number of rows varies, but ends with an empty row.

How do I step through each row and test if column B
has a value < "P", delete that row?

Thanks for any help


JLGWhiz

Delete worksheet row based on condition
 
You're right Bob. I'm slipping into senility here.

"Bob Umlas" wrote:

Sub DeleteNotP()
'do it backwards so deleting rows doesn't mess this up!
for i=range("B65536").end(xlup).Row to 1 step -1
if cells(i,2).value < "P" then rows(i).Delete
Next
End Sub
Bob Umlas
Excel MVP


"miek" wrote in message
...
Could someone help get me started on with the following:

I have text in column B that has a "P", "S", or "".
Number of rows varies, but ends with an empty row.

How do I step through each row and test if column B
has a value < "P", delete that row?

Thanks for any help






All times are GMT +1. The time now is 01:51 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com