ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Compare Dates in vba (https://www.excelbanter.com/excel-programming/390051-compare-dates-vba.html)

Bythsx-Addagio[_2_]

Compare Dates in vba
 
Dates seem to be giving me trouble.

In my macro process I open an excel file that is created automatically each
month in a batch process. The file has the date for which the report was run
for printed in cell A1. I would like my macro to check that the date
printed in the file equals the last day of the previous month.

Basically this... even though I know it is very wrong.

Date1 = DATE(YEAR(TODAY()),MONTH(TODAY()),0)
Date2 = windows(filename).cells("A1").value

If Date1 = Date2 Then

Hopefully this will help me finally learn how to handle dates.
Thanks.

Keith74

Compare Dates in vba
 
Maybe something like this?

Public Sub MatchDates()

If Date = Workbooks("book1").Worksheets("sheet1").Cells(1,
1).Value Then
MsgBox "Dates match"
End If

End Sub

hth

Keith


joel

Compare Dates in vba
 
I don't think you are too far off. You need the dateserrial function and now

DateSerial(year, month, day)

Date1 = DateSerial(Year(Now()), Month(Now()), 0)
Date2 = windows(filename).cells("A1").value
If Date1 = Date2 Then


"Bythsx-Addagio" wrote:

Dates seem to be giving me trouble.

In my macro process I open an excel file that is created automatically each
month in a batch process. The file has the date for which the report was run
for printed in cell A1. I would like my macro to check that the date
printed in the file equals the last day of the previous month.

Basically this... even though I know it is very wrong.

Date1 = DATE(YEAR(TODAY()),MONTH(TODAY()),0)
Date2 = windows(filename).cells("A1").value

If Date1 = Date2 Then

Hopefully this will help me finally learn how to handle dates.
Thanks.


Bythsx-Addagio[_2_]

Compare Dates in vba
 
Thanks for the first part that seems to work.
But when I try to assign the value of Cells("A1") to Date2 I get Run-Time
error 438.
Object doesn't support this property or method.

Date2 = Windows(fNamestring).Cells("A1").Value

Here is the whole part
********************
Date1 = DateSerial(Year(Now()), Month(Now()), 0)
Date2 = Windows(fNamestring).Cells("A1").Value

If Date1 = Date2 Then
********************

Should I be declaring Date2 as a Date, or String?


Thanks again guys,

"Joel" wrote:

I don't think you are too far off. You need the dateserrial function and now

DateSerial(year, month, day)

Date1 = DateSerial(Year(Now()), Month(Now()), 0)
Date2 = windows(filename).cells("A1").value
If Date1 = Date2 Then


"Bythsx-Addagio" wrote:

Dates seem to be giving me trouble.

In my macro process I open an excel file that is created automatically each
month in a batch process. The file has the date for which the report was run
for printed in cell A1. I would like my macro to check that the date
printed in the file equals the last day of the previous month.

Basically this... even though I know it is very wrong.

Date1 = DATE(YEAR(TODAY()),MONTH(TODAY()),0)
Date2 = windows(filename).cells("A1").value

If Date1 = Date2 Then

Hopefully this will help me finally learn how to handle dates.
Thanks.


joel

Compare Dates in vba
 
Range uses "A1" not cells for cells(1,1)
need Workbook instead of windows
need to add sheets.

Workbooks(fNamestring).Sheets("sheet1").Range("A1" ).Value

"Bythsx-Addagio" wrote:

Thanks for the first part that seems to work.
But when I try to assign the value of Cells("A1") to Date2 I get Run-Time
error 438.
Object doesn't support this property or method.

Date2 = Windows(fNamestring).Cells("A1").Value

Here is the whole part
********************
Date1 = DateSerial(Year(Now()), Month(Now()), 0)
Date2 = Windows(fNamestring).Cells("A1").Value

If Date1 = Date2 Then
********************

Should I be declaring Date2 as a Date, or String?


Thanks again guys,

"Joel" wrote:

I don't think you are too far off. You need the dateserrial function and now

DateSerial(year, month, day)

Date1 = DateSerial(Year(Now()), Month(Now()), 0)
Date2 = windows(filename).cells("A1").value
If Date1 = Date2 Then


"Bythsx-Addagio" wrote:

Dates seem to be giving me trouble.

In my macro process I open an excel file that is created automatically each
month in a batch process. The file has the date for which the report was run
for printed in cell A1. I would like my macro to check that the date
printed in the file equals the last day of the previous month.

Basically this... even though I know it is very wrong.

Date1 = DATE(YEAR(TODAY()),MONTH(TODAY()),0)
Date2 = windows(filename).cells("A1").value

If Date1 = Date2 Then

Hopefully this will help me finally learn how to handle dates.
Thanks.



All times are GMT +1. The time now is 05:27 PM.

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