ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Find data between dates (https://www.excelbanter.com/excel-programming/427302-find-data-between-dates.html)

Kirsty

Find data between dates
 
I have a macro that is designed to look for dates on one sheet in cells A1
and A2 then match that to dates on another sheet in colum D before putting
all the information into a third sheet. I have this macro

j = 1
For i = 1 To Sheets("Grades").UsedRange.Rows.Count
If (Sheets("Grades").Cells(i, 3) = Sheets("Monthly
reporting").Cells(1, 1) And Sheets("Grades").Cells(i, 1) <= Sheets("Monthly
reporting").Cells(2, 1)) Then
Sheets("Grades").Rows(i).Copy Sheets("Grade calc").Rows(j)
j = j + 1
End If
Next i

and it is not working. Any suggestions

OssieMac

Find data between dates
 
Hi Kirsty,

The logic of the code appears OK. However, you say "look for dates on one
sheet in cells A1 and A2 then match that to dates on another sheet in colum
D"

Your code does not look in column D on the second sheet for the match; it is
looking in column 1 (or A).

Perhaps it should be like this:-

For i = 1 To Sheets("Grades").UsedRange.Rows.Count
If Sheets("Grades").Cells(i, 3) = _
Sheets("Monthly reporting").Cells(1, 4) And _
Sheets("Grades").Cells(i, 1) <= _
Sheets("Monthly reporting").Cells(2, 4) Then

Sheets("Grades").Rows(i).Copy _
Sheets("Grade calc").Rows(j)
j = j + 1
End If
Next i


Did you also know that you can use "D" in lieu of the column number like the
following. I agree with someone on this forum that pointed this out to me
that it makes the code easier to read and debug if you know exactly what
column is being referred to.

j = 1
For i = 1 To Sheets("Grades").UsedRange.Rows.Count
If Sheets("Grades").Cells(i, 3) = _
Sheets("Monthly reporting").Cells(1, "D") And _
Sheets("Grades").Cells(i, 1) <= _
Sheets("Monthly reporting").Cells(2, "D") Then

Sheets("Grades").Rows(i).Copy _
Sheets("Grade calc").Rows(j)
j = j + 1
End If
Next i


--
Regards,

OssieMac




All times are GMT +1. The time now is 05:33 AM.

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