Delete Rows
Sub DeleteRows()
Dim i As Long, LastRow As Long LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row For i = LastRow To 1 Step -1 If Cells(i, 6) = 0 Then Rows(i).Delete Next End Sub I would like to get some help with this macro. Currently it is deleting more rows than I want it to delete. I would like it to Look at each row in Column A. If the row in Column A has contents in it than check the same row of Column F. If the contents in Column F are equal to or greater than 0 delete the row and keep deleting the rows below it until Column A has contents in it again. Repeat for every row in Column A and Column F. |
Delete Rows
Sub DeleteRows()
Dim i As Long, LastRow As Long LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row For i = LastRow To 1 Step -1 If Cells(i, 1) < "" If Cells(i, 6) = 0 Then Rows(i).Delete End If Next End Sub -- If this post helps click Yes --------------- Jacob Skaria "EJ" wrote: Sub DeleteRows() Dim i As Long, LastRow As Long LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row For i = LastRow To 1 Step -1 If Cells(i, 6) = 0 Then Rows(i).Delete Next End Sub I would like to get some help with this macro. Currently it is deleting more rows than I want it to delete. I would like it to Look at each row in Column A. If the row in Column A has contents in it than check the same row of Column F. If the contents in Column F are equal to or greater than 0 delete the row and keep deleting the rows below it until Column A has contents in it again. Repeat for every row in Column A and Column F. |
Delete Rows
When I first ran the macro I got a message that said Compile Error: Syntax
Error so I added Then to this line If Cells(i, 1) < "" Then, which made the macro look like this Sub DeleteRows() Dim i As Long, LastRow As Long LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row For i = LastRow To 1 Step -1 If Cells(i, 1) < "" Then If Cells(i, 6) = 0 Then Rows(i).Delete End If Next End Sub And it worked but not in all cases. For some reason one row with 0 did not get deleted. And a couple other rows in Columns H:O that should have been deleted didnt get deleted. Could the code be changed instead so that the macro Selects a range that begins in Column A and selects to the right until Column O is included and selects down a number of rows and stops above the next row in Column A with contents inside of it. Then it looks in Column F at the first row in the selected range. If the contents inside Column F are = 0 then all the rows in the selected range get deleted. If not then the macro moves to the next range and the pattern continues. What do you think? "Jacob Skaria" wrote: Sub DeleteRows() Dim i As Long, LastRow As Long LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row For i = LastRow To 1 Step -1 If Cells(i, 1) < "" If Cells(i, 6) = 0 Then Rows(i).Delete End If Next End Sub -- If this post helps click Yes --------------- Jacob Skaria "EJ" wrote: Sub DeleteRows() Dim i As Long, LastRow As Long LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row For i = LastRow To 1 Step -1 If Cells(i, 6) = 0 Then Rows(i).Delete Next End Sub I would like to get some help with this macro. Currently it is deleting more rows than I want it to delete. I would like it to Look at each row in Column A. If the row in Column A has contents in it than check the same row of Column F. If the contents in Column F are equal to or greater than 0 delete the row and keep deleting the rows below it until Column A has contents in it again. Repeat for every row in Column A and Column F. |
All times are GMT +1. The time now is 02:18 PM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com