Jouer un son (VBA)

geo909

XLDnaute Nouveau
Kikou all,

J'ai un petit problème pour jouer un son (fichier WAV) qui se trouve dans le répertoire ou se trouve le fichier excel.

Pour jouer un son j'utilise la fonction suivante qui fonctionne :
Code:
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\Program Files\ACTIONS\SON_0.wav"")"

Je sais comment récuperer le chemin ou se situe le fichier excel (le meme que le son) et me mettre dans une variable:
Code:
TOTO = ActiveWorkbook.Path & "\SON_0.wav"
TOTO sera par exemple égal à "C:\Program Files\ACTIONS\SON_0.wav"


Par contre comment faire pour allier les 2...C'est à dire remplacer C:\Program Files\ACTIONS\SON_0.wav (chemin écrit en dur qui ne marche pas si le chemin change) par TOTO (qui lui "suivra" si le répertoire change) ?

J'ai tout essayé notamment d'écrire la ligne suivante qui me paraissait correcte mais cela ne fonctionne pas...une idée ???
Code:
Application.ExecuteExcel4Macro "SOUND.PLAY(,"TOTO")"


Merci
 

geo909

XLDnaute Nouveau
Re : Jouer un son (VBA)

Ba oui bizarre...j'espère que je trouverais une solution...

Sachant que le fichier excel et le fichier audio se trouve obligatoirement dans le même répertoire exemple :
...\repertoire\fichier.xls
...\repertoire\son.wav

J'ai essayé de mettre :
Code:
Application.ExecuteExcel4Macro "SOUND.PLAY(,""\repertoire\SON_0.wav"")"

Mais ca ne marche pas non plus :mad:
 

Hulk

XLDnaute Barbatruc
Re : Jouer un son (VBA)

Re,

Ou bien ça dans un module standard... de Denis Michon.
Code:
Declare Function sndPlaySound32 Lib "C:\WINDOWS\SYSTEM32\winmm.dll" _
    Alias "sndPlaySoundA" (ByVal lpszSoundName As String, _
    ByVal uFlags As Long) As Long

Sub Son()

    Call sndPlaySound32(ThisWorkbook.Path & "\SON_0.Wav", 0)

End Sub
Celui là il fonctionne :D
 

Discussions similaires

Réponses
2
Affichages
416

Statistiques des forums

Discussions
311 720
Messages
2 081 909
Membres
101 836
dernier inscrit
karmon