2012-02-21 28 views
6

Tôi có 2 chuỗi, strStartTime và strEndTime.Cách tính thời gian trôi qua tính bằng giây trong VBA?

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

Tôi muốn tìm hiểu có bao nhiêu giây trôi qua giữa strStartTime và strEndTime vì vậy tôi đã làm điều này:

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

Kết quả tôi nhận được là dtDuration = "# 1/10/1900 #" trong cửa sổ xem Người dân địa phương.

Tại sao điều này lại xảy ra? Làm cách nào để nhận dtDuration bằng 11 trong 11 giây trôi qua giữa thời gian bắt đầu và kết thúc?

Trả lời

6

Chỉ cần thay đổi kiểu dữ liệu để Long:

Dim dtDuration as Long 

VBA chuyển đổi kết quả bằng số của chức năng datediff vào biến với kiểu ngày.

+0

THANK YOU RADEK! – phan

+0

Tôi rất vui vì tôi có thể giúp :) – Radek

Các vấn đề liên quan