2012-02-21 12 views
6

मेरे पास 2 स्ट्रिंग्स, स्ट्रस्टार्टटाइम और स्ट्रेंडटाइम है।वीबीए में सेकंड में बीत चुके समय की गणना कैसे करें?

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

मैं पता लगाने के लिए कितने सेकंड strStartTime और strEndTime के बीच गुजरे चाहते तो मैं ऐसा किया:

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

परिणाम मुझे प्राप्त होता है dtDuration = "# 1/10/1900 #" स्थानीय विंडो में विंडो देखें।

ऐसा क्यों होता है? मैं प्रारंभ और समाप्ति समय के बीच समाप्त होने वाले 11 सेकंड के लिए डीटी अवधि को बराबर 11 कैसे प्राप्त करूं?

उत्तर

6

बस लांग चर प्रकार बदलने:

Dim dtDuration as Long 

VBA तारीख प्रकार के साथ चर में DateDiff कार्यों के संख्यात्मक परिणाम बदल देता है।

+0

धन्यवाद कि आप रैड करते हैं! – phan

+0

मुझे खुशी है कि मैं मदद कर सकता हूं :) – Radek

संबंधित मुद्दे