ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Help with datediff vba (https://www.excelbanter.com/excel-programming/323243-help-datediff-vba.html)

John

Help with datediff vba
 

Cells(Row,16) is a date formatted 02/13/04

Worksheets(4).Cells(10, 5) = DateDiff("d", Date, Cells(Row,16) Doesn't work.

I tried
dim billed as date
billed = cells(row,16)
datediff("d",date, billed)
but that doesn't work either.

I need the difference in days between two dates. One is cells(row, 16)
and the other is today's date. I imagine it has something to do with how
the dates are formatted but I can't find anything about it.

Thanks

John

Ron Rosenfeld

Help with datediff vba
 
On Tue, 15 Feb 2005 21:25:16 -0600, John wrote:


Cells(Row,16) is a date formatted 02/13/04

Worksheets(4).Cells(10, 5) = DateDiff("d", Date, Cells(Row,16) Doesn't work.

I tried
dim billed as date
billed = cells(row,16)
datediff("d",date, billed)
but that doesn't work either.

I need the difference in days between two dates. One is cells(row, 16)
and the other is today's date. I imagine it has something to do with how
the dates are formatted but I can't find anything about it.

Thanks

John


You'll need to post more information.

What does "doesn't work" mean? Machine crashes? Excel crashes? Some error
message? Wrong answer?

The following works fine on my machine with some date in P1:

==============
Sub foo()
Dim billed As Date
Const row As Integer = 1
billed = Cells(row, 16)

Debug.Print (DateDiff("d", Date, billed))
End Sub
============

Of course, if all you are looking for is the difference in days, then the
simpler formula:

SomeVariable = Date - billed

would give the same answer.




--ron

Tom Ogilvy

Help with datediff vba
 
just subtract the earlier date from the later date. The integer part of the
answer is the days between. The decimal part is the portion of a 24 hour
day. Dates/Time are stored as the number of days from a base date (1900).
So if you subtract them from each other, you get the difference in days.

--
Regards,
Tom Ogilvy

"John" wrote in message
...

Cells(Row,16) is a date formatted 02/13/04

Worksheets(4).Cells(10, 5) = DateDiff("d", Date, Cells(Row,16) Doesn't

work.

I tried
dim billed as date
billed = cells(row,16)
datediff("d",date, billed)
but that doesn't work either.

I need the difference in days between two dates. One is cells(row, 16)
and the other is today's date. I imagine it has something to do with how
the dates are formatted but I can't find anything about it.

Thanks

John




Steve[_74_]

Help with datediff vba
 
John

1) Have you assigned a value to the variable 'Row' in your code? (I'd stear
clear of using 'Row' as a variable name).


The following works for me:
Sub test()

YourColumn = 1
For Yourrow = 1 To 15
Worksheets(1).Cells(Yourrow, YourColumn + 1) = DateDiff("d", Date,
Cells(Yourrow, YourColumn))
Next
End Sub


HTH
Steve


"John" wrote in message
...

Cells(Row,16) is a date formatted 02/13/04

Worksheets(4).Cells(10, 5) = DateDiff("d", Date, Cells(Row,16) Doesn't
work.

I tried
dim billed as date
billed = cells(row,16)
datediff("d",date, billed)
but that doesn't work either.

I need the difference in days between two dates. One is cells(row, 16) and
the other is today's date. I imagine it has something to do with how the
dates are formatted but I can't find anything about it.

Thanks

John




John

Help with datediff vba
 
Tom Ogilvy wrote:
just subtract the earlier date from the later date. The integer part of the
answer is the days between. The decimal part is the portion of a 24 hour
day. Dates/Time are stored as the number of days from a base date (1900).
So if you subtract them from each other, you get the difference in days.

Thanks, it wasn't working because I was referencing the wrong cell which
was a string not a date. :(

JOhn


All times are GMT +1. The time now is 02:21 AM.

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