Fonction "alarm" multiple
Le
RT
Bonjour à tous
Concerne la fonction ALARM
Je voudrais avoir une double condition pour deux alarmes
Suite au message "Ki saura"
GD m'a répondu d'aller faire un tour la haut sur la collinne et de siffler
sur le site de
http://www.j-walk.com/ss/excel/tips/tip87.htm
Et j'y ai trouvé une solution
Misange m'a également fourni une réponse
Elle fonctionnent toutes les deux
MAIS
Comme vous commencé à le savoir je ne suis jamais content
Dans ma cellule k25 par example j'ai la formule =Sum(b2:b25)
Et dans ma cellule k26 la formule =Alarm(k25,">499")
Et, bien sur, quand le montant dépasse 499 le son déclaré dans un module est
activé
Voici la déclaration
' *********************************************
'Windows API function declaration
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 & "\money.wav"
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Exit Function
End If
ErrHandler:
Alarm = False
End Function
' *************************************************************
Ce que je voudrais faire maintenant est d'avoir un deuxième son
Par example si le montant est inférieure à 499 rien
Si il est entre 499 et 2000 le son "un.wav"
Et si il est supérieure à 2000 le son "deux.wav"
Alors voilà
Moi je chipotte depuis une heure sans résultats
si je fais un "nesting" en ajoutant une condition ou en créant deux
fonction alarm et alarms
Rien à faire je bloque devant le message d'erreur "VALUE"
Donc si une bonne âme est devant son clavier pour le moment, ce serait
gentil de me pousser dans la bonne direction
Un grand merci à tous
A bientôt
Rex
Concerne la fonction ALARM
Je voudrais avoir une double condition pour deux alarmes
Suite au message "Ki saura"
GD m'a répondu d'aller faire un tour la haut sur la collinne et de siffler
sur le site de
http://www.j-walk.com/ss/excel/tips/tip87.htm
Et j'y ai trouvé une solution
Misange m'a également fourni une réponse
Elle fonctionnent toutes les deux
MAIS
Comme vous commencé à le savoir je ne suis jamais content
Dans ma cellule k25 par example j'ai la formule =Sum(b2:b25)
Et dans ma cellule k26 la formule =Alarm(k25,">499")
Et, bien sur, quand le montant dépasse 499 le son déclaré dans un module est
activé
Voici la déclaration
' *********************************************
'Windows API function declaration
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 & "\money.wav"
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Exit Function
End If
ErrHandler:
Alarm = False
End Function
' *************************************************************
Ce que je voudrais faire maintenant est d'avoir un deuxième son
Par example si le montant est inférieure à 499 rien
Si il est entre 499 et 2000 le son "un.wav"
Et si il est supérieure à 2000 le son "deux.wav"
Alors voilà
Moi je chipotte depuis une heure sans résultats
si je fais un "nesting" en ajoutant une condition ou en créant deux
fonction alarm et alarms
Rien à faire je bloque devant le message d'erreur "VALUE"
Donc si une bonne âme est devant son clavier pour le moment, ce serait
gentil de me pousser dans la bonne direction
Un grand merci à tous
A bientôt
Rex

Poser une question


Je dirais : En K27 la formule =Alarm(k25,">2000")
j-p
En somme, si je comprends bien, ce qu'il te faut c'est
un "Select Case" ?
Select Case Montant
Case Is < 499
'Jouer la Flûte enchantée
Case 499 To 1000
'Jouer "Meunier tu dors"
Case Else
'Jouer la Marseillaise
End Select
Mais attention, ça va être bruyant, cette affaire-là.
[Qu'est-ce qu'il attend pour partir, ce message ? Tout-à-
l'heure on va le voir quinze fois ...]
**
Function Alarm(Cell, Condition1, Condition2)
Dim WAVFile As String
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
son1 = "C:TELEPORT.WAV"
son2 = "C:WATER2.WAV"
On Error GoTo ErrHandler
If Condition2 = 0 Or Cell < Condition2 Then
If Evaluate(Cell.Value & Condition1) Then
WAVFile = son1
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Exit Function
End If
Else: Evaluate (Cell.Value & Condition2)
WAVFile = son2
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm = True
Exit Function
End If
ErrHandler:
Alarm = False
End Function
isabelle
Comme je viens de dire à CAP2 je suis un fatigué ce soir
Si je comprends bien (et ne tape trop fort si c'est pas ça, s'il-te-plait)
la première ligne deviendrai
Function Alarm(k25, =>499, >2000)
Est-ce bien cela ou dois-je changer autre chose?
Encore merci pour ta réponse et bientôt
Rex
"isabelle" news:
Ca n'a pas l'air mal ce truc de Case
Dommage que ce ne sont pas des Case de vin
Zut voilà le grand mot laché
JPS et les autres vont pas tarder à rappliquer
Ils sentent le vin à des kilomètres
Sérieusement
PAs ce soir, mais demain je fait essais avec cet option
Je n'ai pas encore joué avec des caisses, c'est donc l'occasion
Merci et je te tiendrai au courant
Rex
"Gloops" news:828e01c495b4$ed287500$
Bonjour,
En somme, si je comprends bien, ce qu'il te faut c'est
un "Select Case" ?
Select Case Montant
Case Is < 499
'Jouer la Flûte enchantée
Case 499 To 1000
'Jouer "Meunier tu dors"
Case Else
'Jouer la Marseillaise
End Select
Mais attention, ça va être bruyant, cette affaire-là.
[Qu'est-ce qu'il attend pour partir, ce message ? Tout-à-
l'heure on va le voir quinze fois ...]
**