EXCEL 疑惑清指教
发布网友
发布时间:2022-06-08 05:24
我来回答
共2个回答
热心网友
时间:2023-11-09 17:15
问题1:就是如何把这个自定义函数(宏代码)放到Excel中,操作步骤如下:
1)在Excel中按 Alt+F11 打开宏编辑器;
2)在宏编辑器中按 Ctrl+R 打开 工程资源管理面板;
3)在工程资源管理面板中找到你要添加的那个文件(个人宏工作溥,或其他),显示为:VBAProject(文件名),在上面点右键,选择“插入”->“模块”,然后将代码粘贴到右边的空白处,保存即可;
宏名就是 alarm()
作用:根据所提供的参数播放不同的声音(取决于函数中的判断与调用),同时显示参数内容(这个无论如何都会显示的)
用法为 =alarm(1个字符串参数),比如=alarm("好")。
只要放到个人宏工作簿中了,就像Excel系统函数一样使用。
问题2:
是在这个问题增加来的 http://zhidao.baidu.com/question/124044112.html?fr=im2
要放多种声音的话,解决办法有不止一个,要看具体情况了,比如:
如果只要显示“OK”和“NG”等有限的几个,那可以只用这一个函数 alarm(),反正你要把要显示的内容写在那个括号中,所以在函数中判断所给的是“OK”还是“NG”还是其他,然后调用不同的声音文件就好了。
代码为:
……
Function alarm(str As String) As String
Dim WAVFile As String
alarm = str
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
if str = "NG" then WAVFile = "C:\WINDOWS\Media\Windows XP 错误.wav"
if str = "OK" then WAVFile = "C:\WINDOWS\Media\Windows XP 通知.wav"
if str = "其他" then WAVFile = "………………"
'…………别的情况
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
End Function
Excel单元格中可以这么用: =IF(A1=A2,alarm("OK"),alarm("NG"))
Good luck!
如有疑问,请Hi我。来自:求助得到的回答
热心网友
时间:2023-11-09 17:15
=IF(A1=A2,"OK",alarm("NG"))
改成=IF(A1=A2,alarm("OK"),alarm("NG"))
过程改为
Function alarm(str As String) As String
Dim WAVFile As String
alarm = str
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
WAVFile1 = "C:\WINDOWS\Media\Windows XP 错误.wav" '此为声音文件,可以改为相同时的发间
WAVFile2="*********"'此为声音文件,可以改为不相同时的发音
if alarm="OK" then Call PlaySound(WAVFile1, 0&, SND_ASYNC Or SND_FILENAME)
if alarm="NG" then Call PlaySound(WAVFile2, 0&, SND_ASYNC Or SND_FILENAME)
End Function