I believe this may be because DATEDIF insists on the first argument being less than or equal to the second argument. You get away with it in the B2 formula because you're comparing days so Excel ignores everything after the '17/06/2010'.
If you change B3 to "=IF(DATEDIF(A2,A3,"d")=0,B2,B2+1)" then you get 2 as the result.
If your column A isn't in date order, so that you can't assume the date in one row is less than or equal to the date in the following row, then the best answer I can think of is to use the date functions to isolate the parts of the date you want to test, e.g.
"=IF(AND(YEAR($A1) = YEAR($A2), MONTH($A1) = MONTH($A2), DAY($A1) = DAY($A2)), $B1, $B1 + 1)"
Hope that helps.
|