Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Conditionally Making a Sound.

Conditionally Making a Sound

by Allen Wyatt
(last updated December 28, 2013)

7

Ken knows how to create conditional formats in Excel. What he really wants to do, however, is have Excel make an audible sound (a beep or whatever) if the conditions are met.

There is no way to do this without resorting to using macros. If you just want to make a beep sound, you can use something like this:

Function BeepMe() As String
    Beep
    BeepMe = ""
End Function

All this user-defined function does is to play a sound (which will vary depending on the system you are using) and then return an empty string. You can use the function in your worksheet in this manner:

=IF(A12>300,BeepMe(),"")

If you want to play some sound other than the default system beep, you'll need to use the Windows API PlaySound function. The following code creates a user-defined function that will play the default "tada" sound so prevalent in Windows.

Private Declare Function PlaySound Lib "winmm.dll" _
  Alias "PlaySoundA" (ByVal lpszName As String, _
  ByVal hModule As Long, ByVal dwFlags As Long) As Long

    Const SND_SYNC = &H0
    Const SND_ASYNC = &H1
    Const SND_FILENAME = &H20000

Function SoundMe() As String
    Call PlaySound("c:\windows\media\tada.wav", _
      0, SND_ASYNC Or SND_FILENAME)
    SoundMe = ""
End Function

This function can be called the same as the previous example:

=IF(A12>300,SoundMe(),"")

If you want to play a different WAV file, simply change the file specification in the SoundMe function.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (7658) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Conditionally Making a Sound.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He  is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Converting Text to Comments

One of the strong suits of macros is that they can process the information in a document quickly and reliably. For ...

Discover More

Selecting Tabs in Dialog Boxes

Dialog boxes normally present information in a series of tabs. If you want to move from tab to tab without taking your ...

Discover More

Adjusting Space Before

If you need to adjust the space that appears before a paragraph, there are several ways you can approach the adjustment. ...

Discover More

Excel Smarts for Beginners! Featuring the friendly and trusted For Dummies style, this popular guide shows beginners how to get up and running with Excel while also helping more experienced users get comfortable with the newest features. Check out Excel 2013 For Dummies today!

More ExcelTips (menu)

Noting Inactivity within a Timeframe

There are many times when you are creating a worksheet that you need to analyze dates within that worksheet. Once such ...

Discover More

Shading a Cell Until Something is Entered

Conditional formatting provides the opportunity to get very creative with your formatting. One such creative urge can be ...

Discover More

Counting Colors from Conditional Formats

Conditional formatting is a great way to make sure that your information looks a particular way, even if the information ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is one more than 2?

2018-04-23 09:53:04

Ehem

Hi,

i want to ask, how to adding a new string with another sounds?

Thank you


2017-12-06 05:39:46

Fahad

' Good day below Macro work With Extinction .wav , but not work with .m4a or other extonction.

#If Win64 Then
Private Declare PtrSafe Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As LongPtr, ByVal dwFlags As Long) As Boolean
#Else
Private Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, ByVal dwFlags As Long) As Boolean
#End If
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
Function SoundMe(StrSNDPath As String) As String
'Updateby Extendoffice 20161223
Call PlaySound(StrSNDPath, 0, SND_ASYNC Or SND_FILENAME)
SoundMe = ""
End Function

Sub Play()

Call SoundMe("C:\Users\Fahad\Desktop\scroll.wav") ' works
Call SoundMe("C:\Users\Fahad\Desktop\scroll.m4a") ' Not work

End Sub


2017-09-04 15:04:32

bhaskar Reddy

Hi
thanks for your valuable information.

I am able to apply the code but when I close and open the same file the sound is not coming as before.

can you please tell what I have to do.


2016-12-03 10:22:53

Kevin

Hi,

I'm trying to create a AED trainer (Automatic External Defibrillator trainer) using a userform in Excel

I'm really struggling with getting a custom sound to play from a userform command button.

i.e. Press power (hear a powering up sound, PowerUp.wav)

I have a 64bit Window and office environment.

Thanks for any help you can give


2016-11-13 00:59:04

Guns

HLi, you only to copy paste these lines :
Function SoundMe() As String
Call PlaySound("c:windowsmediatada.wav", _
0, SND_ASYNC Or SND_FILENAME)
SoundMe = ""
End Function

Change the name : SoundMe to SoundMe1, SoundMe2, etc as you like. And for each function, you call playsound from different file.


2015-03-03 05:56:30

HLi

I want play three different sounds(for example: A1<50 or A1=50 or A1 >50). How i can do this?


2014-07-23 08:28:01

Aru

Well this is helpful

I want the code which makes it work for a complete column.It should check constraints of the values of each cell in the column and respond the sounds accordingly


This Site

Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.