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
Case Is <= Condition1 son = son1 Case Condition1 To Condition2 son = son2 Case Is > Condition2 son = son3
cela dépend si tu veux que son 1 joue jusquà <= condition 1 ou < condition 1 ainsi de suite pour les autres conditions.
isabelle
Eh ben didon
Là cela frise le "real-time"
Je sais que j'ai dis il y a une demi heure que je laissait tomber pour ce soir, mais..... Enfin
Encore une fois (on est en Belgique, hein?) un grand merci à toi et à Gloops
Je vous tiendrai au courant demain
Bonne soirée
Rex
"isabelle" wrote in message news:
bonjour Gloops,
tu as raison c'est plus propre avec select case,
Function Alarm1(Cell, Condition1, Condition2, Condition3) Dim WAVFile As String Const SND_ASYNC = &H1 Const SND_FILENAME = &H20000 son1 = "C:TELEPORT.WAV" son2 = "C:WATER2.WAV" son3 = "C:Beeth5th.wav" On Error GoTo ErrHandler Select Case Cell Case Is < Condition1 WAVFile = son1 Case Condition1 To Condition2 WAVFile = son2 Case Else WAVFile = son3 End Select Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME) Alarm1 = True Exit Function ErrHandler: Alarm1 = False End Function
isabelle
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 ...]
-----Message d'origine----- 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
.
bonjour Rex,
on peux modifier comme ça,
Case Is <= Condition1
son = son1
Case Condition1 To Condition2
son = son2
Case Is > Condition2
son = son3
cela dépend si tu veux que son 1 joue jusquà <= condition 1 ou <
condition 1
ainsi de suite pour les autres conditions.
isabelle
Eh ben didon
Là cela frise le "real-time"
Je sais que j'ai dis il y a une demi heure que je laissait tomber pour ce
soir, mais.....
Enfin
Encore une fois (on est en Belgique, hein?) un grand merci à toi et à Gloops
Je vous tiendrai au courant demain
Bonne soirée
Rex
"isabelle" <as.isabellevIE@videotron.ca> wrote in message
news:413F2620.C741854B@videotron.ca...
bonjour Gloops,
tu as raison c'est plus propre avec select case,
Function Alarm1(Cell, Condition1, Condition2, Condition3)
Dim WAVFile As String
Const SND_ASYNC = &H1
Const SND_FILENAME = &H20000
son1 = "C:TELEPORT.WAV"
son2 = "C:WATER2.WAV"
son3 = "C:Beeth5th.wav"
On Error GoTo ErrHandler
Select Case Cell
Case Is < Condition1
WAVFile = son1
Case Condition1 To Condition2
WAVFile = son2
Case Else
WAVFile = son3
End Select
Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME)
Alarm1 = True
Exit Function
ErrHandler:
Alarm1 = False
End Function
isabelle
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 ...]
-----Message d'origine-----
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
Case Is <= Condition1 son = son1 Case Condition1 To Condition2 son = son2 Case Is > Condition2 son = son3
cela dépend si tu veux que son 1 joue jusquà <= condition 1 ou < condition 1 ainsi de suite pour les autres conditions.
isabelle
Eh ben didon
Là cela frise le "real-time"
Je sais que j'ai dis il y a une demi heure que je laissait tomber pour ce soir, mais..... Enfin
Encore une fois (on est en Belgique, hein?) un grand merci à toi et à Gloops
Je vous tiendrai au courant demain
Bonne soirée
Rex
"isabelle" wrote in message news:
bonjour Gloops,
tu as raison c'est plus propre avec select case,
Function Alarm1(Cell, Condition1, Condition2, Condition3) Dim WAVFile As String Const SND_ASYNC = &H1 Const SND_FILENAME = &H20000 son1 = "C:TELEPORT.WAV" son2 = "C:WATER2.WAV" son3 = "C:Beeth5th.wav" On Error GoTo ErrHandler Select Case Cell Case Is < Condition1 WAVFile = son1 Case Condition1 To Condition2 WAVFile = son2 Case Else WAVFile = son3 End Select Call PlaySound(WAVFile, 0&, SND_ASYNC Or SND_FILENAME) Alarm1 = True Exit Function ErrHandler: Alarm1 = False End Function
isabelle
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 ...]
-----Message d'origine----- 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