OVH Cloud OVH Cloud

Fonction "alarm" multiple

11 réponses
Avatar
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

10 réponses

1 2
Avatar
JpPradier
Bonjour RT

Je dirais : En K27 la formule =Alarm(k25,">2000")

j-p
Avatar
Gloops
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





.



Avatar
isabelle
bonjour RT,

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


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


Avatar
RT
Bonsoir

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" wrote in message
news:
bonjour RT,

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


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




Avatar
RT
Bonsoir

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" wrote in message
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 ...]

-----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





.



Avatar
RT
Bonsoir

Oui mais cela me donnera toujours le même son

Ce que je voudrais c'est que plus le montan est élevé, plus la félicitation
est grande
de là l'idée d'essayer d'inclure plusieurs fichiers wav suivant que le
montant en K25 est grand ou petit

Merci de répondre et de participer à ce groupe

A bientôt

Rex



"JpPradier" wrote in message
news:
Bonjour RT

Je dirais : En K27 la formule =Alarm(k25,">2000")

j-p


Avatar
isabelle
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





.





Avatar
isabelle
la formule est :
=Alarm1(C1;500;550;600)

isabelle


bonjour RT,

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


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




Avatar
isabelle
il faut modifier
Case Condition1 To Condition2
pour
Case Condition1 + 1 To Condition2

isabelle


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





.







Avatar
RT
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





.







1 2