ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Delete Rows Based on Words (https://www.excelbanter.com/excel-discussion-misc-queries/189904-delete-rows-based-words.html)

Cue

Delete Rows Based on Words
 
I'm trying to delete rows that 'Immediate Refund' in the cells of a column. I
have a formula but it does not work. Can someone help me with this?

Sub Delete_N_MarkedRows()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim lastrow As Long, r As Long
lastrow = ActiveSheet.UsedRange.Rows.Count
For r = lastrow To 1 Step -1
If UCase(Cells(r, 6).Value) = "Immediate Refund" Then Rows(r).Delete
Next r
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
--
Cue

Jim Cone[_2_]

Delete Rows Based on Words
 

This line...
If UCase(Cells(r, 6).Value) = "Immediate Refund" Then Rows(r).Delete
Resolves to...
If IMMEDIATE REFUND = "Immediate Refund" Then Rows(r).Delete

You could change the lower case "Immediate Refund" to upper case
and probably get it to work.
-Or-
Add Option Compare Text to the top of the module
-Or-
Use the StrComp function...
If StrComp(Cells(r, 6).Text, "Immediate Refund", 1) = 0 Then Rows(r).Delete
--
Jim Cone
Portland, Oregon USA
http://www.realezsites.com/bus/primitivesoftware
(Excel Add-ins / Excel Programming)



"Cue"
wrote in message
I'm trying to delete rows that 'Immediate Refund' in the cells of a column. I
have a formula but it does not work. Can someone help me with this?

Sub Delete_N_MarkedRows()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim lastrow As Long, r As Long
lastrow = ActiveSheet.UsedRange.Rows.Count
For r = lastrow To 1 Step -1
If UCase(Cells(r, 6).Value) = "Immediate Refund" Then Rows(r).Delete
Next r
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
--
Cue

Cue

Delete Rows Based on Words
 
Thanks for your help!
--
Cue


"Jim Cone" wrote:


This line...
If UCase(Cells(r, 6).Value) = "Immediate Refund" Then Rows(r).Delete
Resolves to...
If IMMEDIATE REFUND = "Immediate Refund" Then Rows(r).Delete

You could change the lower case "Immediate Refund" to upper case
and probably get it to work.
-Or-
Add Option Compare Text to the top of the module
-Or-
Use the StrComp function...
If StrComp(Cells(r, 6).Text, "Immediate Refund", 1) = 0 Then Rows(r).Delete
--
Jim Cone
Portland, Oregon USA
http://www.realezsites.com/bus/primitivesoftware
(Excel Add-ins / Excel Programming)



"Cue"
wrote in message
I'm trying to delete rows that 'Immediate Refund' in the cells of a column. I
have a formula but it does not work. Can someone help me with this?

Sub Delete_N_MarkedRows()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim lastrow As Long, r As Long
lastrow = ActiveSheet.UsedRange.Rows.Count
For r = lastrow To 1 Step -1
If UCase(Cells(r, 6).Value) = "Immediate Refund" Then Rows(r).Delete
Next r
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
--
Cue



All times are GMT +1. The time now is 12:07 PM.

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