克莱夫(Clive)是一位观鸟者,拥有超过300个MP3鸟类声音文件。他想创建一个Excel工作表,其中只有一列,其中列出了MP3文件的实际名称,例如“ cormorant.mp3”。他希望从这300个左右的单元中的每个单元创建一个到物理MP3文件的超链接,以便播放器打开并播放鸟的声音。他知道自己可以单独插入超链接,但这显然很繁琐。因此,他想知道是否有一种方法可以基于工作表中的MP3文件名自动创建这样的链接。

这个问题实际上包括两个部分:将文件名放入Excel工作表中,然后创建指向MP3文件的链接,以便可以播放鸟鸣。

首先,请确保所有MP3文件都位于硬盘驱动器上的同一文件夹中。 _ExcelTips_的其他问题已经介绍了如何获取文件列表。您可能希望查看在_ExcelTips_页面上找到的有关如何执行此操作的想法:

http://excelribbon.tips.net/T011144

一旦名称在工作表中(假设它们在A列中),您就可以轻松地使用HYPERLINK工作表功能来组合实际的链接。例如,您可以在单元格B1中放置以下内容:

=HYPERLINK("C:\Documents\Birdsongs\" & A1)

这假定歌曲所在的文件夹为C:\ Documents \ Birdsongs \。如果路径实际上不同,则只需在HYPERLINK函数中进行更改即可。

一旦正确的公式位于单元格B1中,您就可以将其复制下来,以获取获得所有正确的超链接所需的许多单元格。

当然,您可以指定HYPERLINK功能要使用的“显示文本”。如果您的鸟鸣文件以鸟名开头并以.mp3结尾,则可以通过以下方式将显示文本添加到HYPERLINK函数中:

=HYPERLINK("C:\Documents\Birdsongs\" & A1, LEFT(A1, LEN(A1) - 4)

这种用法只是从文件名中除去最后四个字符(句点和“ mp3”),然后将其用作显示文本。

如果要使用宏方法来实际创建超链接(不使用HYPERLINK函数),那么一个不错的起点是使用本技巧前面提到的技巧中的文件名抓取宏。可以修改它,不仅将文件名放入工作表中,还可以创建必要的超链接:

Sub MakeHyperlinks()

Dim sPath As String     Dim sFile As String     Dim iRow As Integer

'specify directory to use - must end in "\"

sPath = "C:\Documents\Birdsongs\"



iRow = 0     sFile = Dir(sPath)

While sFile <> ""

iRow = iRow + 1         Sheet1.Cells(iRow,1) = sFile         sBird = Left(sFile, Len(sFile)-4)

ActiveSheet.Hyperlinks.Add Anchor:=Sheet1.Cells(iRow,1), _           Address:=sPath & sFile, TextToDisplay:=sBird         sFile = Dir     ' Get next filename     Wend End Sub

如果您决定采用宏路线,请确保当前工作表中没有任何内容。宏运行非常快,并擦除了其写入的单元格中的所有内容。完成后,您将在A列中找到文件名,并在B列中找到指向MP3文件的超链接。

当您单击工作表中的超链接时,Excel将启动您的Web浏览器并加载MP3文件。然后浏览器播放文件。

注意:

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

链接:/ excelribbon-ExcelTipsMacros [点击此处在新的浏览器标签中打开该特殊页面]。

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

本提示(13127)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。