2012-02-21 14 views
6

Ho 2 stringhe, strStartTime e strEndTime.Come calcolare il tempo trascorso in secondi in VBA?

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

voglio scoprire quanti secondi trascorsi tra strStartTime e strEndTime così ho fatto questo:

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

Il risultato che ottengo è dtDuration = "# 1/10/1900 #" nella finestra di visualizzazione di Locals.

Perché succede? Come faccio a ottenere dtDuration uguale a 11 per gli 11 secondi trascorsi tra l'ora di inizio e quella di fine?

risposta

6

Basta cambiare tipo di variabile a Long:

Dim dtDuration as Long 

VBA converte i risultati numerici delle funzioni DateDiff nella variabile di tipo data.

+0

GRAZIE RADEK! – phan

+0

Sono felice di poter aiutare :) – Radek

Problemi correlati