Extract Rows By Date - Follow Up

G

Guest

Ok, first thanks for what you have given me so far. With alot of help I think I have this very close to being correct. I took what you gave me and got alot of help, and used a couple of books. Here is what I hav

Sub OpenMonthlyChart(
Application.ScreenUpdating = Fals
Dim FirstLetter As Strin
Dim LastLetter As Strin
Dim DateOne As Lon
Dim DateTwo As Lon

Workbooks.Open Filename:=
ThisWorkbook.Path & "\ProgramData\FileData\StoredData\ExecutiveSummaryReports\MonthlySummary\Report.xls

Windows("MainFile.xls").Activat
Sheets("DataSheet1").Selec
FirstLetter = Range("D15").Valu
LastLetter = Range("E15").Valu
DateOne = Range("D12").Valu
DateTwo = Range("D10").Valu

Columns("P:T").Selec
Selection.ClearContent

With Windows("Report.xls"
Columns(FirstLetter & ":" & LastLetter).Selec
With Selectio
.AutoFilter Field:=1, Criteria1:=">=" & DateTwo, Operator:=xlAn
.AutoFilter Field:=1, Criteria1:="<=" & DateOne, Operator:=xlAn
End Wit
.Cells.SpecialCells(xlCellTypeVisible).Cop
Windows("TIPSData.xls").Activat
Sheets("Data1").Activat
Range("P1").Selec
ActiveSheet.Past
Application.CutCopyMode = Fals
'.Range("A1").EntireRow.Delet
End Wit

The problem is I am getting an error in the area with the "with" and the "autofilter". It is telling me something about not having any data but I know that I do. The only thing I have changed from what you provided is that the area to pull data from is set by two variables and the date ranges are set by two variables. The local computer guy helped me get this far but now even he confused. And to be honest I don't know how much he really knew to begin with (if you see this, sorry Rob, just me being frustrated)

Anyway, any further assistance you can give me would be greatly appreciated, as I am just not sure what might be wrong

Thanks

Randy Walke

----- Bob Phillips wrote: ----

Hi Randy

Here's some code that will capture all rows with dates between 9th Jan i
column A, and 3rd Feb in column

Worksheets("Sheet2").Cells.ClearContent
With Worksheets("Sheet3"
.Range("A1").EntireRow.Inser
With .Columns("A:B"
.AutoFilter Field:=1, Criteria1:=">=09-Jan", Operator:=xlAn
.AutoFilter Field:=2, Criteria1:="<=03-Feb", Operator:=xlAn
End Wit
.Cells.SpecialCells(xlCellTypeVisible).Cop
Worksheets("Sheet2").Activat
Range("A1").Selec
ActiveSheet.Past
Application.CutCopyMode = Fals
.Range("A1").EntireRow.Delet
.Range("A1").EntireRow.Delet
End Wit


--

HT

Bob Phillip
... looking out across Poole Harbour to the Purbeck
(remove nothere from the email address if mailing direct

Randy Walker said:
I know a little about this excel and less about programming but wa
directed here by a friend to try and find an answer. I have looked throug
the posts but can't find anything that seems to answer my question
Although since I am not exactly sure what to do, maybe this has already bee
answered beforelonger each month. I need a macro that will pull out any row of data tha
has a date value between two that I select. I need this data for ad-ho
reports. I sorry if this is confusing. Basically on sheet1 in "A1" an
"A2" I would put two dates. Then it would pull out any row that has a dat
in column A that is between these two dates and paste it on sheet2. Tha
sheet with all the data is sheet3
 
P

Paul Robinson

Hi
Try

Selection.AutoFilter Field:=1, Criteria1:=">=" & DateTwo,
Operator:=xlAnd, _
Criteria2:="<=" & DateOne
regards
Paul

Randy Walker said:
Ok, first thanks for what you have given me so far. With alot of help I think I have this very close to being correct. I took what you gave me and got alot of help, and used a couple of books. Here is what I have

Sub OpenMonthlyChart()
Application.ScreenUpdating = False
Dim FirstLetter As String
Dim LastLetter As String
Dim DateOne As Long
Dim DateTwo As Long


Workbooks.Open Filename:= _
ThisWorkbook.Path & "\ProgramData\FileData\StoredData\ExecutiveSummaryReports\MonthlySummary\Report.xls"

Windows("MainFile.xls").Activate
Sheets("DataSheet1").Select
FirstLetter = Range("D15").Value
LastLetter = Range("E15").Value
DateOne = Range("D12").Value
DateTwo = Range("D10").Value

Columns("P:T").Select
Selection.ClearContents

With Windows("Report.xls")
Columns(FirstLetter & ":" & LastLetter).Select
With Selection
.AutoFilter Field:=1, Criteria1:=">=" & DateTwo, Operator:=xlAnd
.AutoFilter Field:=1, Criteria1:="<=" & DateOne, Operator:=xlAnd
End With
.Cells.SpecialCells(xlCellTypeVisible).Copy
Windows("TIPSData.xls").Activate
Sheets("Data1").Activate
Range("P1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
'.Range("A1").EntireRow.Delete
End With

The problem is I am getting an error in the area with the "with" and
the "autofilter". It is telling me something about not having any
data but I know that I do. The only thing I have changed from what
you provided is that the area to pull data from is set by two
variables and the date ranges are set by two variables. The local
computer guy helped me get this far but now even he confused. And to
be honest I don't know how much he really knew to begin with (if you
see this, sorry Rob, just me being frustrated).
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top