2012-02-21 11 views
6

Mam 2 ciągi, strStartTime i strEndTime.Jak obliczyć upływ czasu w sekundach w VBA?

strStartTime = "12:32:54" strEndTime = "12:33:05"

Chcę dowiedzieć się, ile sekund upłynęło między strStartTime i strEndTime więc zrobiłem to:

Dim dtDuration as date 
dtDuration = DateDiff("s", CDate(strStartTime), CDate(strEndTime)) 

Otrzymałem wynik: dtDuration = "# 1/10/1900 #" w oknie obserwacyjnym Locals.

Dlaczego tak się dzieje? Jak uzyskać wartość dtDuration równą 11 dla 11 sekund, które upłynęły od początku do końca?

Odpowiedz

6

Wystarczy zmienić typ zmiennej do Long:

Dim dtDuration as Long 

VBA konwertuje wyniki liczbowe funkcji DateDiff do zmiennej z datą typu.

+0

DZIĘKUJEMY RADEK! – phan

+0

Cieszę się, że mogłem pomóc :) – Radek

Powiązane problemy