OVH Cloud OVH Cloud

Beep !

5 réponses
Avatar
Florian
Bonjour, j'essaie d'égayer un peu un programme, et de mettre au moins deux
sons un quand c'est bon, un quand il y a une erreur, dans ce cas j'ai "Beep"
pas très jolie d'ailleurs.
Puis-je avoir au moins deux sons sympa ?
Merci beaucoup
Flo riant

5 réponses

Avatar
Daniel.j
Bonjour,
Utilise cette fonction de John Walkenbach
http://www.j-walk.com/ss/excel/tips/tip87.htm

que j'ai legerement modifiée
Fonctionne sur XL 2003
======================= Private Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, ByVal dwFlags As Long) As Long


Function Alarm(Cell, Condition)
Dim WAVFile As String
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
On Error GoTo ErrHandler
If Evaluate(Cell.Value & Condition) Then
WAVFile = ThisWorkbook.Path & "sound.wav" 'Edit this statement
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Else
WAVFile = ThisWorkbook.Path & "sound2.wav"
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Exit Function
End If
ErrHandler:
Alarm = False
End Function
================ et dans la feuille:
=Alarm(A1;">00")
Si la condition est vrai: joue le son; sound.wav
et si c'est faux joue le son sound2.wav

--
Daniel MVP Excel
FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm


"Florian" a écrit dans le message de news:
| Bonjour, j'essaie d'égayer un peu un programme, et de mettre au moins deux
| sons un quand c'est bon, un quand il y a une erreur, dans ce cas j'ai "Beep"
| pas très jolie d'ailleurs.
| Puis-je avoir au moins deux sons sympa ?
| Merci beaucoup
| Flo riant
|
|
Avatar
Florian
Bonjour Daniel Désolé, sur Excel 2000
J'ai le même Beep pour les 2 conditions.
Merci quand même
Bonne journée
Flo riant

"Daniel.j" a écrit dans le message de
news:
Bonjour,
Utilise cette fonction de John Walkenbach
http://www.j-walk.com/ss/excel/tips/tip87.htm

que j'ai legerement modifiée
Fonctionne sur XL 2003
======================= > Private Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, ByVal dwFlags As Long) As Long


Function Alarm(Cell, Condition)
Dim WAVFile As String
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
On Error GoTo ErrHandler
If Evaluate(Cell.Value & Condition) Then
WAVFile = ThisWorkbook.Path & "sound.wav" 'Edit this statement
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Else
WAVFile = ThisWorkbook.Path & "sound2.wav"
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Exit Function
End If
ErrHandler:
Alarm = False
End Function
================ > et dans la feuille:
=Alarm(A1;">00")
Si la condition est vrai: joue le son; sound.wav
et si c'est faux joue le son sound2.wav

--
Daniel MVP Excel
FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm


"Florian" a écrit dans le message de news:


| Bonjour, j'essaie d'égayer un peu un programme, et de mettre au moins
deux

| sons un quand c'est bon, un quand il y a une erreur, dans ce cas j'ai
"Beep"

| pas très jolie d'ailleurs.
| Puis-je avoir au moins deux sons sympa ?
| Merci beaucoup
| Flo riant
|
|





Avatar
Daniel.j
Il me semble que pour XL 2000 il faut déclarer ainsi (?!)
Mais je n'ai plus xl 2000 pour tester . Et il me semble aussi
que cela depend de la version de Windows .
=========== Declare Function sndPlaySound32 Lib "winmm.dll" Alias "sndPlaySoundA" _
(ByVal lpzSoundName As String, ByVal uFlags As Long) As Long

Sub Musique()
If Application.CanPlaySounds Then
Call sndPlaySound32("C:Sonsfichier.wav", 0)
End If
End Sub
================ Si cela marche il faudrait modifier la fonction de John !
-------

Sinon j'ai un fichier ,Quizz.xls pour XL 97 (qui fonctionne aussi avec XL 2003)
qui devrait fonctionner avec XL 2000
Test des reponses avec sons wav si vrai/faux.
Je peux te l'envoyer si tu veux !
Daniel


"Florian" a écrit dans le message de news:
| Bonjour Daniel Désolé, sur Excel 2000
| J'ai le même Beep pour les 2 conditions.
| Merci quand même
| Bonne journée
| Flo riant
|
Avatar
Florian
Merci beaucoup Daniel, cela me donne qu'un malheureux Beep.
Merci quand même et bonne soirée
Flo riant

"Daniel.j" a écrit dans le message de
news:
Il me semble que pour XL 2000 il faut déclarer ainsi (?!)
Mais je n'ai plus xl 2000 pour tester . Et il me semble aussi
que cela depend de la version de Windows .
=========== > Declare Function sndPlaySound32 Lib "winmm.dll" Alias "sndPlaySoundA" _
(ByVal lpzSoundName As String, ByVal uFlags As Long) As Long

Sub Musique()
If Application.CanPlaySounds Then
Call sndPlaySound32("C:Sonsfichier.wav", 0)
End If
End Sub
================ > Si cela marche il faudrait modifier la fonction de John !
-------

Sinon j'ai un fichier ,Quizz.xls pour XL 97 (qui fonctionne aussi avec XL
2003)

qui devrait fonctionner avec XL 2000
Test des reponses avec sons wav si vrai/faux.
Je peux te l'envoyer si tu veux !
Daniel


"Florian" a écrit dans le message de news:


| Bonjour Daniel Désolé, sur Excel 2000
| J'ai le même Beep pour les 2 conditions.
| Merci quand même
| Bonne journée
| Flo riant
|




Avatar
AV
Dans le module de la feuille pour laquelle tu veux tester l'entrée en A1 (à
adapter)
Private Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, ByVal dwFlags As Long) As Long
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000

Private Sub Worksheet_Change(ByVal zz As Range)
If zz.Address <> "$A$1" Then Exit Sub
If [A1] = "zaza" Then jouer_SON Else Beep
End Sub

Sub jouer_SON()
fichierSON = "tada.wav"
fichierSON = "C:WINDOWSMEDIA" & fichierSON
Call PlaySound(fichierSON, 0&, SND_ASYNC Or SND_FILENAME)
End Sub

AV