Aide macro lecture fichier son WAV

billybad

XLDnaute Nouveau
Bonjour,

Je suis débutant dans l'utilisation d'excel. Je cherche à mettre en place une macro dont la fonction serait la suivante :
Je souhaiterais lorsque j'écris un chiffre dans la cellule A1 cela lance automatiquement un fichier son WAV (via lecteur windows media ou autre) correspondant au chiffre écrit. Plus précisément je voudrais que la macro prenne un compte les chiffres allant de 1 à 8. A chaque chiffre serait associé un son, si j'écris 1 en A1 alors cela lance le fichier son "x" automatiquement, si j'écris 2 en A2 cela lance le fichier son "y"...
J'ai essayé diverses formules trouvé sur différentes discussions mais cela ne semble pas fonctionner.

En espérant être clair dans mon explication
Merci d'avance:)
 

max.lander

XLDnaute Occasionnel
Re : Aide macro lecture fichier son WAV

Bonjour à tous,

A tester, il faut ajouter à la racine de C: SON1, SON2....


a+
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Selection As Integer
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then

Selection = ActiveSheet.Range("A1").Value

Select Case Selection

Case Is = 1
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON1.wav"")"

Case Is = 2
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON2.wav"")"

Case Is = 3
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON3.wav"")"

Case Is = 4
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON4.wav"")"

Case Is = 5

Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON5.wav"")"
Case Is = 6
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON6.wav"")"

Case Is = 7
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON7.wav"")"

Case Is = 8
Application.ExecuteExcel4Macro "SOUND.PLAY(,""C:\SON8.wav"")"

Case Else

MsgBox ("Selection erronée")

End Select




End If
End Sub
 
Dernière édition:

Paf

XLDnaute Barbatruc
Re : Aide macro lecture fichier son WAV

Bonjour billybad et bienvenue sur XLD, max.lander,

une autre solution:

en tête de feuille de code de la feuille concernée:
Code:
Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long

puis dans cette même feuille:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim Chemin as String
 If Not Intersect(Target, Range("A1")) Is Nothing Then
    Chemin= " C:\repertoire\sousrepertoire\" ' répertoire où se trouvent les sons, à adapter
    Select Case Target.Value

    Case  1
      PlaySound Chemin & "Coyote.wav", 1, 1

    Case  2
      PlaySound Chemin & "Lapin.wav", 1, 1

   Case  3
      PlaySound Chemin & "Fourmi.wav", 1, 1
...
...

    Case Else
       MsgBox ("Selection erronée")

   End Select

 End If
End Sub

Si le nom des fichiers son comporte le chiffre qui doit le lancer (ex: Son1.wav, comme dans le code de max.lander) on peut simplifier:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim Chemin as String
 If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
    Chemin= " C:\repertoire\sousrepertoire\" ' répertoire où se trouvent les sons, à adapter
     PlaySound Chemin & "FichierSon" & Target.Value & ".wav", 1, 1
 End If
End Sub

A+
 

VIARD

XLDnaute Impliqué
Re : Aide macro lecture fichier son WAV

Bonjour Billybad, Max.Lander, Paf et à tous

Le son "Wave" c'est pas mal, mais pourquoi pas le "Beep" du micro, exemple
fichier joint

A+ Jean-Paul
 

Pièces jointes

  • Manip_Beep_Son(2).xlsm
    17.9 KB · Affichages: 33

billybad

XLDnaute Nouveau
Re : Aide macro lecture fichier son WAV

Merci pour le fichier bip qui fonctionne très bien. Le problème est que les fichiers au format wav que je veux lire sont des fichiers sons spécifiques que j'ai déjà établi (plus précisément des sons d'instruments de musique).
J'ai essayé les différentes lignes de code que vous m'avez fourni (encore merci). J'ai rentré la ligne de code suivante :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Chemin As String
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
Chemin = " C:\Fichier son" ' répertoire où se trouvent les sons, à adapter
PlaySound Chemin & "SON1" & Target.Value & ".wav", 1, 1
End If
End Sub


Le fichier son est intitulé SON1 et bien rangé dans le dossier Fichier son mais ça ne fonctionne pas... Ai-je fait une mauvaise manipulation?
 

max.lander

XLDnaute Occasionnel
Re : Aide macro lecture fichier son WAV

Salut à tous,

Comme ça c'est mieux !

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Chemin As String
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
Chemin = " C:\Fichier son\" ' répertoire où se trouvent les sons, à adapter
PlaySound Chemin & "SON1" & Target.Value & ".wav", 1, 1
End If
End Sub
 

Paf

XLDnaute Barbatruc
Re : Aide macro lecture fichier son WAV

re ,

PlaySound Chemin & "SON1" & Target.Value & ".wav", 1, 1 signifie que si on saisit 1 on veut jouer le fichier SON11.wav, 2 pour SON12.wav ....

Si on veut jouer les fichiers SON1.wav, SON2.wav... supprimer le 1 de "SON1"

A+
 

billybad

XLDnaute Nouveau
Re : Aide macro lecture fichier son WAV

Merci pour toutes ces réponses. J'ai essayé les deux dernières formules mais celles-ci ne semblent pas fonctionner quand je tape 1 dans la cellule A1. Peut-être que j'oublie de faire une manip pour faire fonctionner le code...
 

Paf

XLDnaute Barbatruc
Re : Aide macro lecture fichier son WAV

Re,

sans plus de détails, impossible de savoir d'où provient l'anomalie.

Préciser exactement le répertoire dans lequel se trouvent les fichiers fichiers sons, le nom exact de ces fichiers et le classeur contenant le code en défaut.

A+
 

mutzik

XLDnaute Barbatruc
Re : Aide macro lecture fichier son WAV

bonjour la foule

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Chemin As String
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
Chemin = " C:\Fichier son\" ' répertoire où se trouvent les sons, à adapter
PlaySound Chemin & "SON" & Target.Value & ".wav", 1, 1
End If
End Sub
 

Discussions similaires

Réponses
6
Affichages
317

Statistiques des forums

Discussions
314 204
Messages
2 107 186
Membres
109 771
dernier inscrit
herve1979