Beep Statement

Syntax

Beep

Description

Sounds a tone through the computer's speaker.

Example

Private Sub CommandButton2_Click()

    iVoid = DoSomeLongFunction()
    Beep
    MsgBox "Finished!"
    
End Sub

Programming Tips and Gotchas

  • The frequency and duration of the tone depends on the computer's hardware. Bear in mind that on some systems, a mouse click is louder than the beep.

  • Overuse of the Beep statement won't endear you to your users.

  • Thoughtful use at the end of a long possibly unattended process may be appropriate.

  • Since the successful operation of the Beep statement doesn't require the presence of any multimedia hardware (like a sound board, for example), it can be used when a system isn't configured to support sound. For example, if the following is defined in the declarations section of a code module:

    Declare Function waveOutGetNumDevs Lib "winmm.dll" () As Long
    Declare Function PlaySound Lib "winmm.dll" _
            Alias "PlaySoundA" (ByVal lpszName As String, _
            ByVal hModule As Long, ByVal dwFlags As Long) _
            As Long
    
    Public Const SND_APPLICATION = &H80
    Public Const SND_ASYNC = &H1
    Public Const SND_FILENAME = &H20000
    Public Const SND_NODEFAULT = &H2
    
    Public HasSound As Boolean
    
    Public Function IsSoundSupported() As Boolean
       If (waveOutGetNumDevs > 0) Then _
          IsSoundSupported = True
    End Function

    then the procedure

    Private Sub Form_Load() Dim intCtr As Integer HasSound = IsSoundSupported() If HasSound Then Call PlaySound("c:\windows\media\tada.wav", 0, _ SND_FILENAME Or SND_NODEFAULT) Else For intCtr ...

Get VB & VBA in a Nutshell: The Language now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.