ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   delete rows if cell in row contains "a" or "o" or empty (https://www.excelbanter.com/excel-programming/400349-delete-rows-if-cell-row-contains-o-empty.html)

bartman1980

delete rows if cell in row contains "a" or "o" or empty
 
I want to delete the entire rows if a cell in column F contains "a" or
"o" or empty.
Then I also want to delete the rows which are in a range of row 10 to
25.

I already made something but I cannot manage to only look in the range
row 10 to 25.

Sub Example()
Dim Lrow As Long
Dim CalcMode As Long
Dim StartRow As Long
Dim EndRow As Long
With Application
CalcMode = .Calculation
.Calculation = xlCalculationManual
.ScreenUpdating = False
End With
With ActiveSheet
.DisplayPageBreaks = False
StartRow = 1
EndRow = .Cells(.Rows.Count, "F").End(xlUp).Row
For Lrow = EndRow To StartRow Step -1
If IsError(.Cells(Lrow, "F").Value) Then
ElseIf .Cells(Lrow, "F").Value = "a" Or .Cells(Lrow,
"F").Value = "o" Or .Cells(Lrow, "F").Value = ""
Then .Rows(Lrow).Delete
End If
Next
End With
With Application
.ScreenUpdating = True
.Calculation = CalcMode
End With
End Sub


joel

delete rows if cell in row contains "a" or "o" or empty
 
Sub Example()
Dim Lrow As Long
Dim CalcMode As Long
Dim StartRow As Long
Dim EndRow As Long
With Application
CalcMode = .Calculation
.Calculation = xlCalculationManual
.ScreenUpdating = False
End With
With ActiveSheet
.DisplayPageBreaks = False
.Rows("10:25").Delete
StartRow = 1
EndRow = .Cells(.Rows.Count, "F").End(xlUp).Row
For Lrow = EndRow To StartRow Step -1
If not IsError(.Cells(Lrow, "F").Value) Then
.Cells(Lrow, "F").Value = "a" Or _
.Cells(Lrow,"F").Value = "o" Or _
.Cells(Lrow, "F").Value = "" Then

.Rows(Lrow).Delete
End If
Next
End With
With Application
.ScreenUpdating = True
.Calculation = CalcMode
End With
End Sub


"bartman1980" wrote:

I want to delete the entire rows if a cell in column F contains "a" or
"o" or empty.
Then I also want to delete the rows which are in a range of row 10 to
25.

I already made something but I cannot manage to only look in the range
row 10 to 25.

Sub Example()
Dim Lrow As Long
Dim CalcMode As Long
Dim StartRow As Long
Dim EndRow As Long
With Application
CalcMode = .Calculation
.Calculation = xlCalculationManual
.ScreenUpdating = False
End With
With ActiveSheet
.DisplayPageBreaks = False
StartRow = 1
EndRow = .Cells(.Rows.Count, "F").End(xlUp).Row
For Lrow = EndRow To StartRow Step -1
If IsError(.Cells(Lrow, "F").Value) Then
ElseIf .Cells(Lrow, "F").Value = "a" Or .Cells(Lrow,
"F").Value = "o" Or .Cells(Lrow, "F").Value = ""
Then .Rows(Lrow).Delete
End If
Next
End With
With Application
.ScreenUpdating = True
.Calculation = CalcMode
End With
End Sub



bartman1980

delete rows if cell in row contains "a" or "o" or empty
 
On 31 okt, 17:08, Joel wrote:
Sub Example()
Dim Lrow As Long
Dim CalcMode As Long
Dim StartRow As Long
Dim EndRow As Long
With Application
CalcMode = .Calculation
.Calculation = xlCalculationManual
.ScreenUpdating = False
End With
With ActiveSheet
.DisplayPageBreaks = False
.Rows("10:25").Delete
StartRow = 1
EndRow = .Cells(.Rows.Count, "F").End(xlUp).Row
For Lrow = EndRow To StartRow Step -1
If not IsError(.Cells(Lrow, "F").Value) Then
.Cells(Lrow, "F").Value = "a" Or _
.Cells(Lrow,"F").Value = "o" Or _
.Cells(Lrow, "F").Value = "" Then

.Rows(Lrow).Delete
End If
Next
End With
With Application
.ScreenUpdating = True
.Calculation = CalcMode
End With
End Sub



"bartman1980" wrote:
I want to delete the entire rows if a cell in column F contains "a" or
"o" or empty.
Then I also want to delete the rows which are in a range of row 10 to
25.


I already made something but I cannot manage to only look in the range
row 10 to 25.


Sub Example()
Dim Lrow As Long
Dim CalcMode As Long
Dim StartRow As Long
Dim EndRow As Long
With Application
CalcMode = .Calculation
.Calculation = xlCalculationManual
.ScreenUpdating = False
End With
With ActiveSheet
.DisplayPageBreaks = False
StartRow = 1
EndRow = .Cells(.Rows.Count, "F").End(xlUp).Row
For Lrow = EndRow To StartRow Step -1
If IsError(.Cells(Lrow, "F").Value) Then
ElseIf .Cells(Lrow, "F").Value = "a" Or .Cells(Lrow,
"F").Value = "o" Or .Cells(Lrow, "F").Value = ""
Then .Rows(Lrow).Delete
End If
Next
End With
With Application
.ScreenUpdating = True
.Calculation = CalcMode
End With
End Sub- Tekst uit oorspronkelijk bericht niet weergeven -


- Tekst uit oorspronkelijk bericht weergeven -


I ment to delete only the rows at rows 10 to 25 IF the letters a or o
or nothing are in column F



All times are GMT +1. The time now is 10:39 AM.

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