Ken知道如何在Excel中创建条件格式。但是,他真正想做的是,如果满足条件,则让Excel发出可听见的声音(哔声或其他声音)。

如果不使用宏,则无法做到这一点。如果您只想发出哔声,则可以使用以下命令:

Function BeepMe() As String     Beep     BeepMe = ""

End Function

用户定义的功能仅是播放声音(视您使用的系统而定),然后返回一个空字符串。

您可以通过以下方式在工作表中使用该函数:

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

如果要播放默认系统提示音以外的声音,则需要使用Windows API PlaySound函数。以下代码创建一个用户定义的函数,该函数将播放默认的“ tada”

在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

该函数可以与前面的示例相同:

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

如果要播放其他WAV文件,只需在SoundMe功能中更改文件规范。

请注意,需要在VBA编辑器中的插入模块中输入代码,以使该功能正常工作。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(5834)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本: