Rapport de message :*
 

Re: "petit son" dès que la cellule est activée....

Titre du sujet : Re: "petit son" dès que la cellule est activée....
par myDearFriend! le 06/10/2007 03:01:21

Bonsoir oxor, le Forum,

Drôle d'idée... :mind:

Cela dit, il est possible de faire comme suit :

Dans le module de code de la feuille :
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If 
Not Application.Intersect(TargetColumns(4)) Is Nothing Then
        JouerSon  
'appel de la procédure qui jouera le son
    End If
End Sub

[hr=30%]

La procédure JouerSon sera ensuite saisie dans un module de code standard (exemple : Module1). A partir d'ici, tout dépend du type de son que tu souhaites obtenir...

Voici 3 possibilités pour cette unique procédure (au choix) :

POSSIBILITE 1 : le classique (et surtout le plus simple)
Option Explicit

Sub JouerSon
()
    
Beep
End Sub



POSSIBILITE 2 : le classique revu et corrigé (pas vraiment conseillé compte tenu de l'utilisation d'API Windows)
Option Explicit

Private Declare Function BeepLib "Kernel32" (ByVal Fq&, ByVal Tm&)

Sub JouerSon()     'A adapter comme tu le souhaites... (faire des essais)
'
Beep tonalitédurée
    Beep 500
500
    Beep 550
100
    Beep 625
100
    Beep 675
100
    Beep 750
100
    Beep 850
100
End Sub



POSSIBILITE 3 : le fun (fichiers Wav) (pas vraiment conseillé compte tenu de l'utilisation d'API Windows)
Option Explicit

Private Declare Function PlaySoundLib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName$, _
        ByVal hModule
&, ByVal dwFlags&)

Const 
SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000

Sub JouerSon
()
Dim MonWav As String
    MonWav 
"C:\LeSon.wav"     '... chemin et nom à adapter
    Call PlaySound(MonWav, 0&, SND_ASYNC Or SND_FILENAME)
End Sub


Cordialement,