Thread: sound
View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
dougw dougw is offline
external usenet poster
 
Posts: 4
Default sound

Thanks Joel and Jim for your replies...

Jim, I tried the Cancel = True, yes it does cancel the edit mode but still
prompts for a save.

Joel, when I added the Application.Undo, the first time I run it I get error
1004 which is an
application-defined or object-defined error.its a catch-all error. So I
trapped the error and
that works... But if I add or change anything somewhere else in the sheet...
than click on
a cell to play the file... it does an undo and removes the last data
inputed.

OK ,will have to dig a little deeper into some programming books see if I
can find something else..

Thanks again to both of you for your replies




"Jim Thomlinson" wrote in message
...
The double click event places the selected cell in edit mode. Exiting edit
mode will change the Saved property of the file you are in to false thus
requiring a save. If you add Cancel = True to your existing code you will
not
end up in edit mode and that should keep you from needing a save...

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)

Dim WFile As String

Cancel = True
WFile = ActiveCell.Value + ".wav"
WFile = ThisWorkbook.Path & "\" & WFile
PlayWavFile (WFile)
End Sub

--
HTH...

Jim Thomlinson


"dougw" wrote:

I am trying to click on a cell and have it play a wav file.... I have
that
part working fine ( I belive )

But when I close excel after playing 1 or more wavs if always ask me if I
want to save changes
and I get the popup after only playing a file...no other changes.
Is there a way around this.... thanks



Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" _
(ByVal lpszName As String, _
hModule As Long, _
ByVal dwFlags As Long) As Long


Public Function PlayWavFile(WavFile As String) As String
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
PlaySound WavFile, 0, SND_ASYNC Or SND_FILENAME
PlayWavFile = ""
End Function


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)

Dim WFile As String

WFile = ActiveCell.Value + ".wav"
WFile = ThisWorkbook.Path & "\" & WFile
PlayWavFile (WFile)
End Sub