利用VBA在Excel中播放MP3音乐

时间:2023-11-28 13:59:41 

在VBA中通过调用API函数mcisendstring,可以播放MP3格式的音乐。下面是VBA代码,我们可以将它放入模块中,方法是在VBA编辑器中单击菜单“插入→模块”,在代码窗口中输入下列代码。

Option Explicit
Public Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Public Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long


Private Function ConvShortFilename(ByVal strLongPath$) As String
Dim strShortPath$
If InStr(1, strLongPath, " ") Then
strShortPath = String(LenB(strLongPath), Chr(0))
GetShortPathName strLongPath, strShortPath, Len(strShortPath)
ConvShortFilename = Left(strShortPath, InStr(1, strShortPath, Chr(0)) - 1)
Else
ConvShortFilename = strLongPath
End If
End Function


Public Sub MMPlay(ByRef FileName As String)
FileName = ConvShortFilename(FileName)
mciSendString "close " & FileName, vbNullString, 0, 0
mciSendString "open " & FileName, vbNullString, 0, 0
mciSendString "play " & FileName, vbNullString, 0, 0
End Sub


Public Sub MMStop(ByRef FileName As String)
FileName = ConvShortFilename(FileName)
mciSendString "stop " & FileName, vbNullString, 0, 0
mciSendString "close " & FileName, vbNullString, 0, 0
End Sub

然后,可以在VBA中调用上述代码。

播放MP3:MMPlay (Mp3File)

停止播放:MMStop (Mp3File)

其中Mp3File为包含路径的MP3文件名。

下面是一个简单的示例,在工作表“Sheet1”中有两个按钮,一个是“打开并播放MP3文件”,另一个是“停止播放”。单击“打开并播放MP3文件”按钮可以在“打开”对话框中选择一个MP3音乐文件并播放。

标签:利用,VBA,在,Excel,中,播放,MP3,音乐,在,VBA,中
0
投稿

猜你喜欢

  • Win10更新20H2出现错误显示0x800707e7

    2022-09-04 20:44:08
  • Win10电脑重装Win7系统应该怎么设置BIOS?Win10重装Win7系统设置BIOS教程

    2022-07-16 22:03:24
  • 多图:新版Win10忍者猫已经被众网友玩坏了

    2023-04-15 12:25:49
  • Win11内置主题无法打开怎么修复 Win11内置主题修复教程

    2023-10-01 21:55:31
  • EDIUS如何设置加速画面播放?EDIUS设置加速画面播放的方法

    2023-04-11 21:16:52
  • excel替换空格的方法教程详解

    2022-01-20 19:19:51
  • excel中多列排序的教程

    2023-12-15 22:57:03
  • 如何使用PS修改GIF动图?

    2022-01-18 14:04:45
  • Excel如何设置动态打印区域,零基础也一学就会!

    2023-04-28 19:01:26
  • 苹果Mac强大的图床软件:​​​​PicGo

    2023-03-22 17:50:41
  • WPS表格办公—批量的将颜色隔行填充到表格

    2023-06-18 08:52:01
  • Excel 对合并计算的编辑

    2022-11-12 23:51:28
  • Win10电脑怎么设置默认账户登录?

    2023-11-26 01:18:17
  • 微星主板tpm2.0怎么开启?Win11微星主板怎么开启tpm2.0?

    2022-04-27 18:17:20
  • 改扩建的信息化机房内机柜布局,需根据GB 50174规范来设计、实施

    2022-04-01 21:35:27
  • Word文档如何设置左右奇偶页码

    2022-04-01 03:16:43
  • Word简单画图的方法

    2023-04-30 12:50:11
  • Excel表格怎么将一列的内容分成几列?

    2022-01-27 11:02:12
  • 流量精灵有什么用?淘宝网店流量精灵的作用

    2023-07-29 19:08:14
  • dllhost.exe是什么进程?dllhost.exe为什么运行?

    2023-03-02 10:37:17
  • asp之家 电脑教程 m.aspxhome.com