2017-09-14 56 views
1

PowerpointプレゼンテーションのVBAで毎秒1ずつ増分するカウンタを作成しようとしています。これは私がこれまでに出てきたものです。VBAでカウントアップタイマーを作成する方法

Sub countup() 
    Dim index As Integer 

    index = 0 
    Do Until index > 100 
    index = index + 1 

    DoEvents 
     With ActivePresentation.Slides(1).Shapes(3).TextFrame.TextRange 
     .Text = index 
     End With 

    Loop 
End Sub 

このコードは1から101までインクリメントしますが、1秒ごとに1ずつ増加しません。これはVBA Powerpointにあるので、私はタイマーコントロールを置くことができません。あなたが手伝ってくれることを願ってありがとうございました。

答えて

3

これが可能なソリューションです:.Net機能を追加することなく、

Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) 

Public Sub TestMe2() 

    Dim index As Long 
    index = 0 

    Do Until index > 10 
     index = index + 1 
     Debug.Print index 
     Sleep (1000) 
    Loop 

End Sub 

、このようにそれを行うにはその可能性:

Public Sub TestMe() 

    Dim lngIndex   As Long 
    Dim sngSec    As Single '9GAG 
    Dim sngAddSec   As Single 

    sngAddSec = 1 

    Do Until lngIndex > 4 
     lngIndex = lngIndex + 1 
     sngSec = Timer + sngAddSec 
     Debug.Print lngIndex 
     While Timer < sngSec: Wend 
    Loop 

End Sub 
関連する問題