ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   delete rows with dates between (https://www.excelbanter.com/excel-programming/365993-delete-rows-dates-between.html)

dan

delete rows with dates between
 
Hi,

I have a spreadsheet, column J has dates ranging from June05 - June 06.
I want to delete the entire row if the date falls between 06/01/2005
and 12/31/2005, and merge all the rows up.

I have tried a few things on here but havent gotten them to work for my
situation.

Thank you in advance for any help!


Barb Reinhardt

delete rows with dates between
 
I've used something like this:

Dim DeleteValue As String
Dim rng As Range

DeleteValue = "File(s)"
' This will delete the rows with "File(s)" in the Range("A2:A65536")
With ActiveSheet
.Range("A2:A65536").AutoFilter Field:=1, Criteria1:="=*File(s)*"
' Need to figure out how to enter DeleteValue above

With ActiveSheet.AutoFilter.Range
On Error Resume Next
Set rng = .Offset(1, 0).Resize(.Rows.Count - 1, 1) _
.SpecialCells(xlCellTypeVisible)
On Error GoTo 0
If Not rng Is Nothing Then rng.EntireRow.Delete

End With
.AutoFilterMode = False
End With


It could probably be more elegant, but it works.

"dan" wrote:

Hi,

I have a spreadsheet, column J has dates ranging from June05 - June 06.
I want to delete the entire row if the date falls between 06/01/2005
and 12/31/2005, and merge all the rows up.

I have tried a few things on here but havent gotten them to work for my
situation.

Thank you in advance for any help!



Yngve

delete rows with dates between
 

dan skrev:
Hi,

I have a spreadsheet, column J has dates ranging from June05 - June 06.
I want to delete the entire row if the date falls between 06/01/2005
and 12/31/2005, and merge all the rows up.

I have tried a few things on here but havent gotten them to work for my
situation.

Thank you in advance for any help!


Hi dan

This asume you have a header
Sub DeleteRows()

Dim i As Double, lastrow As Double, Mydate As Date, rngDate As Date
lastrow = Cells(Rows.Count, "J").End(xlUp).Row
Mydate = "06/01/2006"
With ActiveSheet
For i = lastrow To 2 Step -1
rngDate = Range("J2").Offset((i - 2), 0).Value
If rngDate < Mydate Then
Range("J2").Offset((i - 2), 0).EntireRow.Delete

End If
Next i
End With

End Sub

Regards Yngve



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

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