How can I embed an audio player into a Microsoft Excel spreadsheet?
May 20, 2008 11:55 AM   Subscribe

I have an Excel spreadsheet that contains a list of songs, and I want the viewer of the spreadsheet to be able to conveniently listen to sample clips of these songs. The 30 second sample clips are stored in MP3 format on a publicly accessable web server.

Ideally, I would like each song to have a little "play" button next to it, which when clicked will stream the clip. And I'd like it to work on Windows and Mac OS, in Excel 2000 and up. I'd prefer that no extra window appear when streaming the clip, but a small, unobtrusive window that pops up quickly would be acceptable.

At the moment, the spreadsheet simply has a hyperlink to the MP3 for each song. This is inconvenient because, when clicked, the spreadsheet gets minimized and the user's web browser is loaded to play the clip. This makes for an annoying process if the user wants to listen to a bunch of the clips. If this could be done without minimizing Excel, that would be acceptable. Even better if the browser window that appears could be small and unobtrusive.

I've also tried embedding a Flash player into the spreadsheet. It works on Windows, but does not seem to work on Mac OS (I haven't looked deeply into this yet because I don't have direct access to a Mac). In addition, I can't seem to set the FlashVars property for the flash player in Excel, which means I can't specify the MP3 to play.

So, to summarize, here's what I'd like help with:

- Is the ideal solution possible, and how might I go about implementing it?
- If the ideal isn't possible, can I supress Excel's behaviour of minimizing when the user clicks on a web hyperlink? And is there a way to specify the size of the browser window that pops up?
- And finally, any hints on getting an embedded Flash player to work on Mac OS, and also how to set the FlashVars property in Excel?

posted by Emanuel to Technology (7 answers total) 1 user marked this as a favorite
I think I know what you're doing here (quiz?) but why wouldn't you simple do this as a website?
posted by Oktober at 12:11 PM on May 20, 2008

A simple hyperlink to the HTTP:// address will do the trick for you.

You can embed hyperlinks easily in Excel to any document/file on your local computer, on a network, or on the web.

Clearly written help here:
posted by iam2bz2p at 12:16 PM on May 20, 2008

Response by poster: Oktober: yes, it'd be easy to do as a web page, but this is really just one aspect of a more complex spreadsheet. So for the sake of this question, assume that it must be in Excel (if I can't find a good solution within Excel, I may fall back to a solution that involves a web page).

iam2bz2p: Please read the whole question. I already tried that, and it doesn't work very well for my needs.
posted by Emanuel at 12:24 PM on May 20, 2008

The problem you are going to run into here is cross-platform compatibility. If you could restrict to Windows only, you could use some kind of ActiveX control to play MP3s but that won't work on a Mac and may be tricky to get working across multiple versions of Excel.

If you are ok with having to bundle a Java program with it, you may be able to send a media player with the spreadsheet but it would be large and, likely, every bit as disruptive as the web page pop-up.
posted by MasterShake at 1:18 PM on May 20, 2008

Use VBA to embed an ActiveX control that's common across the systems and link it to the given file. Actually, I have no idea if that will work on Macs, but I'd hazard a guess that if you detect OS in your code and set the Windows option to use the Windows Media Player control and set the Mac option to use whatever equivalent is most broadly available, it ought to work.
posted by notashroom at 1:21 PM on May 20, 2008

Guess I should have previewed. ;)
posted by notashroom at 1:21 PM on May 20, 2008

Remember, VBA doesn't work, period, in Office 2008 for the mac. There's simply no support for it.
posted by Oktober at 2:02 PM on May 20, 2008

« Older Mount Shasta Fun!   |   Pig ears optional Newer »
This thread is closed to new comments.