Я пытаюсь использовать функцию DateDiff для макроса в excel с использованием VBA.Функция DateDiff неожиданно возвращает другую дату или значение по умолчанию
Насколько я понимаю, код должен возвращать целочисленное значение.
Вот примеры, приведенные по этому адресу: http://www.techonthenet.com/access/functions/date/datediff.php
-DateDiff ("гггг", № 15/10/1998 года №, № 22/11/2003 года N) будет возвращать 5
- DateDiff ("m", # 15/10/2003 #, # 22/11/2003 #) будет возвращаться 1
-DateDiff ("d", # 15/10/2003 #, # 22/11/2003 #) вернет 38
Вот код, который я использовал:
Sub macrotest()
Dim dateNow, dateThen, dateFinal As Date
dateNow = Format(Sheet1.Cells(2, 2), "DD/MM/YY")
dateThen = Format(Sheet1.Cells(3, 2), "DD/MM/YY")
dateFinal = DateDiff("d", dateNow, dateThen)
Sheet1.Cells(5, 2) = dateFinal
End Sub
Наконец, это то, что я имел в моих первенствовать строк:
B2: 5/30/12
B3: 3/30/12
B5: 12:00:00 AM (эта ячейка должна была иметь указанный результат).
-У меня есть либо даты, которые были отменены по умолчанию, либо 12:00.
Любые идеи? Благодаря!
Ваши данные в файле excel являются актуальными датами или просто текстовыми строками? –
Проверьте, какая ячейка формата B5 установлена на данный момент. Установлен ли он в числовом формате? – mellamokb
Нет, они отформатированы как даты в excel –