Bir dizi komutun ne kadar sürdüğünü görüntülemek için aşağıdaki kodu kullanmaya çalışıyorum. Bu örnekte, "10" ya da benzer bir şeyle geri dönmesini bekledim.VBA - Bir alt sürenin ne kadar sürdüğü gösteriliyor
Bunun yerine geri birlikte gelir:
neler oluyor ve nasıl bunu doğru biçimlendirmek?
Sub timeyWimey()
Dim t1 As Date
Dim t2 As Date
Dim timeTaken As Date
t1 = Now()
Application.Wait (Now + TimeValue("0:00:10"))
t2 = Now()
timeTaken = t2 - t1
MsgBox timeTaken
End Sub
Düzenleme: bazı büyük Yanıtlar sonra
Final Kodu: in
Sub timeyWimey()
'Dim t1 As Double
'Dim t2 As Double
t1 = Now()
Application.Wait (Now + TimeValue("0:00:10"))
t2 = Now()
timeTaken = t2 - t1
MsgBox Format(timeTaken, "nn:ss.000")
End Sub
Sonuçlar:
BAM! Sorun çözüldü! Yardımınız için herkese teşekkürler!
Teşekkür ederiz. Yani bu kesinlikle sorunu açıklıyor. Bunun için biraz düşüneyim. – timbram
Peki, ondalık basamaktan sonraki sayıların biçimi (geçen geçerli günün miktarı) nasıl çalışır? Eğer betiğimi yeniden çalıştırırsam, herşeyi iki katına çıkarırsam, geçen sürenin (10 sn) 0.00005787036934635 olduğunu anlarım. Günün bir yüzdesi mi yoksa bir şey mi? – timbram
Çiftimi cevabımın sonuna nasıl biçimlendirebileceğinizi ekledim. Ve '0.00005787036934635' temel olarak günün yüzdesidir. Örneğin, 0,5 olsaydı, günün yarısı geçtiği için saat 12: 00 olurdu. – Newd