Mi sembra che funzioni ottimamente... calcola la differenza fra le due date/orari nelle unita' specificate.

Per esempio, la differenza in minuti, indicata in 368, equivale a 6 ore e 8 minuti...

Per ottenere quello che ti apetti devi ottenere la differenza in secondi... ed agendo con passi successivi ottenere gli altri dati

secondi = DateDiff("s", "30/07/2005 08:47:36", "30/07/2005 14:55:59")

ore = int(secondi / 3600)
secondi = secondi Mod 3600
minuti = int(secondi / 60)
secondi = secondi Mod 60

ciao