2017-09-14 1 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 

이 코드는 101까지 1 씩 증가하지만 매 초마다 1 씩 증가하지 않습니다. 이것은 VBA 파워 포인트에 있으므로 타이머 컨트롤을 넣을 수 없습니다. 당신이 도울 수 있기를 바랍니다. 고맙습니다.

답변

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 
관련 문제