Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 13
Default Comparing dates

Hi, I'm trying to compare dates in a macro and I think I just need to
be the told the correct format. Currently I have

If (DateValue(testdate) = DateValue("5 / 1 / 2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If

where testdate is a formatted date taken from a cell in the
spreadsheet. Could someone tell me the correct way to do it?

Thanks!

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default Comparing dates

Is testdate a string or an actual dateformat (number). You also should
remove extra spaces If think you want
If (testdate = DateValue("5/1/2007"))

" wrote:

Hi, I'm trying to compare dates in a macro and I think I just need to
be the told the correct format. Currently I have

If (DateValue(testdate) = DateValue("5 / 1 / 2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If

where testdate is a formatted date taken from a cell in the
spreadsheet. Could someone tell me the correct way to do it?

Thanks!


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 13
Default Comparing dates

I've tried just the If (testdate = DateValue("5/1/2007")) and I'm
still having the same problems. Everything is going through the If
part and nothing through the Else part.

On Jun 28, 3:06 pm, Joel wrote:
Is testdate a string or an actual dateformat (number). You also should
remove extra spaces If think you want
If (testdate = DateValue("5/1/2007"))



" wrote:
Hi, I'm trying to compare dates in a macro and I think I just need to
be the told the correct format. Currently I have


If (DateValue(testdate) = DateValue("5 / 1 / 2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If


where testdate is a formatted date taken from a cell in the
spreadsheet. Could someone tell me the correct way to do it?


Thanks!- Hide quoted text -


- Show quoted text -



  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default Comparing dates

Testtdate is not right. I can't tell the format of testdate

DateValue("5/1/2007") = DateValue("5/8/2007"))
would execute tthe else statements

you can add this in the code to help
MsgBox (IsDate(DateValue(testdate)))
Msgbox(testdate)


" wrote:

I've tried just the If (testdate = DateValue("5/1/2007")) and I'm
still having the same problems. Everything is going through the If
part and nothing through the Else part.

On Jun 28, 3:06 pm, Joel wrote:
Is testdate a string or an actual dateformat (number). You also should
remove extra spaces If think you want
If (testdate = DateValue("5/1/2007"))



" wrote:
Hi, I'm trying to compare dates in a macro and I think I just need to
be the told the correct format. Currently I have


If (DateValue(testdate) = DateValue("5 / 1 / 2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If


where testdate is a formatted date taken from a cell in the
spreadsheet. Could someone tell me the correct way to do it?


Thanks!- Hide quoted text -


- Show quoted text -




  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 13
Default Comparing dates

What's weird is if I change the = to a <

If (testdate < DateValue("5/1/2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If

then everything goes through the Else and nothing through the If. Any
ideas?

On Jun 28, 3:25 pm, wrote:
I've tried just the If (testdate = DateValue("5/1/2007")) and I'm
still having the same problems. Everything is going through the If
part and nothing through the Else part.

On Jun 28, 3:06 pm, Joel wrote:



Is testdate a string or an actual dateformat (number). You also should
remove extra spaces If think you want
If (testdate = DateValue("5/1/2007"))


" wrote:
Hi, I'm trying to compare dates in a macro and I think I just need to
be the told the correct format. Currently I have


If (DateValue(testdate) = DateValue("5 / 1 / 2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If


where testdate is a formatted date taken from a cell in the
spreadsheet. Could someone tell me the correct way to do it?


Thanks!- Hide quoted text -


- Show quoted text -- Hide quoted text -


- Show quoted text -





  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 13
Default Comparing dates

Thanks all, I figured it out. The problem was with testdate. New to
this stuff - thanks for the help!

On Jun 28, 3:45 pm, wrote:
What's weird is if I change the = to a <

If (testdate < DateValue("5/1/2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If

then everything goes through the Else and nothing through the If. Any
ideas?

On Jun 28, 3:25 pm, wrote:



I've tried just the If (testdate = DateValue("5/1/2007")) and I'm
still having the same problems. Everything is going through the If
part and nothing through the Else part.


On Jun 28, 3:06 pm, Joel wrote:


Is testdate a string or an actual dateformat (number). You also should
remove extra spaces If think you want
If (testdate = DateValue("5/1/2007"))


" wrote:
Hi, I'm trying to compare dates in a macro and I think I just need to
be the told the correct format. Currently I have


If (DateValue(testdate) = DateValue("5 / 1 / 2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If


where testdate is a formatted date taken from a cell in the
spreadsheet. Could someone tell me the correct way to do it?


Thanks!- Hide quoted text -


- Show quoted text -- Hide quoted text -


- Show quoted text -- Hide quoted text -


- Show quoted text -



  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 9,101
Default Comparing dates

That's not weird, that's logic.

If nothing was going through the ELSE with =, then changing to < would make
everything go through the ELSE.

It is equivalent to doing

if 5 = 3 then
'execute if true <= this will always be executed
else
'execute if false
end if

if 5 < 3 then
'execute if true
else
'execute if false <= this will always be executed

end if


" wrote:

What's weird is if I change the = to a <

If (testdate < DateValue("5/1/2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If

then everything goes through the Else and nothing through the If. Any
ideas?

On Jun 28, 3:25 pm, wrote:
I've tried just the If (testdate = DateValue("5/1/2007")) and I'm
still having the same problems. Everything is going through the If
part and nothing through the Else part.

On Jun 28, 3:06 pm, Joel wrote:



Is testdate a string or an actual dateformat (number). You also should
remove extra spaces If think you want
If (testdate = DateValue("5/1/2007"))


" wrote:
Hi, I'm trying to compare dates in a macro and I think I just need to
be the told the correct format. Currently I have


If (DateValue(testdate) = DateValue("5 / 1 / 2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If


where testdate is a formatted date taken from a cell in the
spreadsheet. Could someone tell me the correct way to do it?


Thanks!- Hide quoted text -


- Show quoted text -- Hide quoted text -


- Show quoted text -




  #8   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,202
Default Comparing dates

What's weird is if I change the = to a <

If (testdate < DateValue("5/1/2007")) Then
cellSTBpaste = "Y" & ActiveCell.Row
cellorderpaste = "X" & ActiveCell.Row
Else
cellSTBpaste = "AB" & ActiveCell.Row
cellorderpaste = "AA" & ActiveCell.Row
End If

then everything goes through the Else and nothing through the If. Any
ideas?


Can you put a break point on this If statement (click the gray border on the
left of it to produce a red dot and highlight the line in red), then run
your macro and when it stops, issue a ?testdate command in the Immediate
window and tell us what prints out?

Rick

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Comparing 2 Dates JWeaver Excel Worksheet Functions 3 August 14th 08 09:01 PM
Comparing Dates fubdap Excel Discussion (Misc queries) 3 September 27th 07 03:53 PM
Comparing two dates using between. BerkshireGuy Excel Programming 1 April 24th 07 12:47 AM
Comparing 3 dates Steve Excel Worksheet Functions 1 May 9th 06 12:10 PM
comparing dates Myriam Excel Programming 3 October 11th 04 04:49 AM


All times are GMT +1. The time now is 04:02 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"