Avatar billede senee Nybegynder
20. april 2005 - 12:51 Der er 7 kommentarer og
1 løsning

Afspildning af lydfil

Hej,
Hvordan skal makroen i Excel se ud hvis man ønsker at afspille en lydfil der ligger på:

C:\Documents and Settings\Skrivebord
Avatar billede stewen Praktikant
20. april 2005 - 16:19 #1
Hvad er formatet på lydfilen?

Hvilken version af Windows? Excel?
Avatar billede stewen Praktikant
20. april 2005 - 16:38 #2
her er faktisk et eksempel (som jeg ved virker!) http://skp.mvps.org/ppt00040.htm

Hvis du kan finde ud af VBA
Avatar billede senee Nybegynder
20. april 2005 - 17:37 #3
Det er en Wav fil. Jeg har Win XP. Jeg har prøvet nedenstående kode, men jeg vil gerne have at filen starter, når regnearket starter, eller hvis jeg trykker på en knap :-)


Public Function PlaySoundFileB(ByVal sndFileName As String) As Boolean

Dim iSuccess As Integer
iSuccess = PlaySound(sndFileName, 0&, SOUND_FILENAME)
If iSuccess = 0 Then
    PlaySoundFileB = False
Else
    PlaySoundFileB = True
End If

End Function


'===== Test the functions ======
Sub TestSounds()

Debug.Print PlaySoundFileB("C:\Documents and Settings\bejstrup\Skrivebord\Test.wav")
Debug.Print PlaySoundFileA("C:\Documents and Settings\bejstrup\Skrivebord\Test.wav")

End Sub
Avatar billede senee Nybegynder
20. april 2005 - 18:00 #4
Jeg får altid meddelelses: Sub or Function not defined
Avatar billede stewen Praktikant
21. april 2005 - 08:49 #5
Option Explicit

Private Declare Function sndPlaySound Lib "winmm.dll" _
            Alias "sndPlaySoundA" _
                (ByVal lpszSoundName As String, _
                ByVal uFlags As Long) As Long

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


Private Const SOUND_FILENAME = &H20000

Public Function PlaySoundFileA(sndFileName As String) As Boolean

Dim iSuccess As Integer
iSuccess = sndPlaySound(sndFileName, SOUND_FILENAME)
If iSuccess = 0 Then
    PlaySoundFileA = False
Else
    PlaySoundFileA = True
End If

End Function

Private Sub Workbook_Open()

Debug.Print PlaySoundFileA("C:\Documents and Settings\bejstrup\Skrivebord\Test.wav")

End Sub
Avatar billede bejstrup Juniormester
21. april 2005 - 09:53 #6
Jeg får en compile error med:
Only commente may appear after end Sub end Function or end property. Den stopper ved:
Private Declare Function sndPlaySound Lib "winmm.dll" _
            Alias "sndPlaySoundA" _
                (ByVal lpszSoundName As String, _
                ByVal uFlags As Long) As Long
Avatar billede stewen Praktikant
21. april 2005 - 10:00 #7
Slet al tidligere kode og skriv KUN fra mit svar! Det skal stå i ovenfor nævnte rækkefølge
Avatar billede bejstrup Juniormester
21. april 2005 - 10:10 #8
Så virker det sørme, takker :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester