使用Office2003 VBA制作有倒计时功能的PPT

  1. 新建一个PPT
  2. 设计好背景界面
  3. 点击菜单视图-工具栏-Visual Basic
  4. 点击图示,拖动按钮到界面上
    使用Office2003 VBA制作有倒计时功能的PPT_第1张图片
  5. 拖到界面的按钮上点右键,选择“属性”

  6. 在Caption输入“开始倒计时”
    使用Office2003 VBA制作有倒计时功能的PPT_第2张图片
  7. 如下图所示,再拖动几个控件到界面上
    使用Office2003 VBA制作有倒计时功能的PPT_第3张图片
  8. 在按钮上点右键,选择“查看代码”(或按键Alt+F11,打开VBA编程环境,后双击Slide1)
  9. 使用Office2003 VBA制作有倒计时功能的PPT_第4张图片ff
  10. 输入代码
    Private Declare Function GetTickCount Lib "kernel32.dll" () As Long
    Private Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)
    'Private Declare Function PlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszName As String, ByVal uFlags As Long) As Long
    Const InterVal = 1000 '自定义的时间间隔
    
    Private Sub CommandButton1_Click()
    
    Static State, myStop As Boolean
    Dim preTime, curTime, myTime, jsTime, txTime As Long
    If State Then myStop = True: Exit Sub
    CommandButton1.Caption = "停止倒计时"
    State = True
    preTime = GetTickCount
    myTime = Val(TextBox2) + 1
    jsTime = Val(TextBox2) + 2
    txTime = Val(TextBox3)
    Label3.Visible = False
    Label4.Visible = False
    TextBox2.Visible = False
    TextBox3.Visible = False
    Label2.Caption = "计时进行中"
    Do
        curTime = GetTickCount
        If curTime - preTime >= InterVal * (jsTime - myTime) Then
            myTime = myTime - 1
            TextBox1 = myTime
            DoEvents
            If myTime = txTime Then
                Label2.Caption = "计时将结束"
               ' Call PlaySound("Ding.wav", 0&)
            End If
            If myTime = 0 Then
                State = False
                myStop = False
                CommandButton1.Caption = "开始倒计时"
               ' Call PlaySound("End.wav", 0&)
                Exit Do
            End If
        End If
        Sleep (20)
        Label1 = Time
        DoEvents
        If myStop Then
            State = False
            myStop = False
            CommandButton1.Caption = "开始倒计时"
            MsgBox "倒计时终止!", vbInformation + vbOKOnly, "操作提示"
            Exit Do
        End If
    Loop
    Label2.Caption = "计时时间到"
    Label3.Visible = True
    Label4.Visible = True
    TextBox2.Visible = True
    TextBox3.Visible = True
    End Sub
    

  11. 保存后,按Shift+F5 , 演示。在请输入倒计时时间(秒)填入60,在倒计时结束前提醒(秒)填入5,点击“开始倒计时”按钮。

你可能感兴趣的:(VBA,powerpoint)