#1 Convertire un orario (hh.mm.ss) in un numero di tipo Double

(Tip per VB6):

Talvolta occorre convertire un orario espresso nel formato “hh:mm:ss” in un numero di tipo Double, specialmente nel caso in cui tale numero sia da utilizzare in calcoli (es. tariffe orarie calcolate su un periodo frazionato).

Per semplificare la conversione è possibile utilizzare la seguente funzione:

Function Ore2Double(tempo As Date) As Double 
	' il parametro di input tempo contiene ad esempio "10:20:30" 
	Dim risultato As Double 
	risultato = Val(DatePart("h", tempo)) 
	risultato = risultato + Val(DatePart("n", tempo)) / 60 
	risultato = risultato + Val(DatePart("s", tempo)) / 3600 
	Ore2Double = risultato 
End Function

Tale funzione può essere richiamata in modo molto semplice:

Dim tempo As Date 
tempo = "10:20:30"        ' conversione implicita 
MsgBox Ore2Double(tempo)  ' restituisce un Double

Pubblicato il 13 gennaio 2008, in Tips, VB6-VBA con tag , . Aggiungi il permalink ai segnalibri. Lascia un commento.

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: