2 conditions en une.

Le
Michel HOLDERITH
Bonjour tout le monde,

Comment peut on sur une lingne (ou en une seule conditions) mettre les
conditions suivantes :

If MONTANTDEB < 0 And Range("F" & CELL.Row).Value > 0 then
******
end if

If MONTANTDEB > 0 And Range("F" & CELL.Row).Value < 0 then
******
end if

les ****** seraient la meme procedure.


est-ce que cette condition marcherait ?

If MONTANTDEB < 0 And Range("F" & CELL.Row).Value > 0 OR If MONTANTDEB > 0
And Range("F" & CELL.Row).Value < 0 then

je ne pense pas.
merci d'avance.
@+
Michel.
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
NoMail
Le #1268729
Michel HOLDERITH a ecrit, Le 19/04/2004 09:40 :
Bonjour tout le monde,

Comment peut on sur une lingne (ou en une seule conditions) mettre les
conditions suivantes :

If MONTANTDEB ******
end if

If MONTANTDEB > 0 And Range("F" & CELL.Row).Value < 0 then
******
end if

les ****** seraient la meme procedure.


est-ce que cette condition marcherait ?

If MONTANTDEB And Range("F" & CELL.Row).Value < 0 then

je ne pense pas....
merci d'avance.
@+
Michel.





If (MONTANTDEB 0 And Range("F" & CELL.Row).Value < 0) then

AV
Le #1268728
If MONTANTDEB Range("F" & CELL.Row).Value < 0 Then
tes instructions
end if

AV
Michel HOLDERITH
Le #1268727
merci a tous les 2 c'est ce que je pensais mais je voulais une
confirmation.....
@+
Michel.

"AV" news:
If MONTANTDEB And

Range("F" & CELL.Row).Value < 0 Then
tes instructions
end if

AV




papou
Le #1268726
Bonjour Michel
Pas testé mais passe par une fonction intermédiaire qui te renvoie VRAI ou
FAUX par exemple :
If TestMichel(MONTANTDEB,Range("F" & CELL.Row).Value) Then
*****
End If

Function TestMichel(Val1, Val2) As Boolean
Dim Une As Boolean, Deux As Boolean
Select Case Val1
Case Is < 0, Is > 0
Une = True
Case Else
Une = False
End Select
Select Case Val2
Case Is < 0, Is > 0
Deux = True
Case Else
Deux = False
End Select
If Une And Deux Then
TestMichel = True
Else: TestMichel = False
End If
End Function

Cordialement
Pascal

"Michel HOLDERITH" #
Bonjour tout le monde,

Comment peut on sur une lingne (ou en une seule conditions) mettre les
conditions suivantes :

If MONTANTDEB ******
end if

If MONTANTDEB > 0 And Range("F" & CELL.Row).Value < 0 then
******
end if

les ****** seraient la meme procedure.


est-ce que cette condition marcherait ?

If MONTANTDEB And Range("F" & CELL.Row).Value < 0 then

je ne pense pas....
merci d'avance.
@+
Michel.





AV
Le #1268721
Si, comme il me semble comprendre, tu veux exécuter une instruction sous réserve
que l'un des 2 termes MONTANTDEB ou Range("F" & CELL.Row).Value) soit > 0 et
l'autre < 0 , l'utilisation de la fonction "SIGNE" affectée au produit des 2
variables pourrait raccourcir un peu tes tests logiques : elle renverra -1 si
l'un des termes est négatif et l'autre sup. à zéro :
Ca pourrait faire qque chose comme ça :

If Evaluate("SIGN(" & [MONTANTDEB] & "*" & Range("F" & CELL.Row).Value & ")")
= -1 Then
tes intructions
End If

AV
Michel HOLDERITH
Le #1268715
Tip-Top t'es le plus grand AV...... et le plus fort......
C'est ce que je voulais...
Encore un grand merci,
@+
Michel.

"AV" news:
Si, comme il me semble comprendre, tu veux exécuter une instruction sous
réserve

que l'un des 2 termes MONTANTDEB ou Range("F" & CELL.Row).Value) soit > 0
et

l'autre < 0 , l'utilisation de la fonction "SIGNE" affectée au produit des
2

variables pourrait raccourcir un peu tes tests logiques : elle
renverra -1 si

l'un des termes est négatif et l'autre sup. à zéro :
Ca pourrait faire qque chose comme ça :

If Evaluate("SIGN(" & [MONTANTDEB] & "*" & Range("F" & CELL.Row).Value &
")")

= -1 Then
tes intructions
End If

AV





Michel HOLDERITH
Le #1268714
merci de ta reponse mais AV m'a fournis un code plus court et plus adapte a
ce que je voulais,
@+
Michel.

"papou" news:
Bonjour Michel
Pas testé mais passe par une fonction intermédiaire qui te renvoie VRAI ou
FAUX par exemple :
If TestMichel(MONTANTDEB,Range("F" & CELL.Row).Value) Then
*****
End If

Function TestMichel(Val1, Val2) As Boolean
Dim Une As Boolean, Deux As Boolean
Select Case Val1
Case Is < 0, Is > 0
Une = True
Case Else
Une = False
End Select
Select Case Val2
Case Is < 0, Is > 0
Deux = True
Case Else
Deux = False
End Select
If Une And Deux Then
TestMichel = True
Else: TestMichel = False
End If
End Function

Cordialement
Pascal

"Michel HOLDERITH" news:

#
Bonjour tout le monde,

Comment peut on sur une lingne (ou en une seule conditions) mettre les
conditions suivantes :

If MONTANTDEB ******
end if

If MONTANTDEB > 0 And Range("F" & CELL.Row).Value < 0 then
******
end if

les ****** seraient la meme procedure.


est-ce que cette condition marcherait ?

If MONTANTDEB 0


And Range("F" & CELL.Row).Value < 0 then

je ne pense pas....
merci d'avance.
@+
Michel.









Michel Pierron
Le #1252660
Bonjour AV;
Et pourquoi pas simplement:
If MONTANTDEB * Range("F" & CELL.Row) < 0 then

MP

"AV" news:
Si, comme il me semble comprendre, tu veux exécuter une instruction sous réserve
que l'un des 2 termes MONTANTDEB ou Range("F" & CELL.Row).Value) soit > 0 et
l'autre < 0 , l'utilisation de la fonction "SIGNE" affectée au produit des 2
variables pourrait raccourcir un peu tes tests logiques : elle renverra -1 si
l'un des termes est négatif et l'autre sup. à zéro :
Ca pourrait faire qque chose comme ça :

If Evaluate("SIGN(" & [MONTANTDEB] & "*" & Range("F" & CELL.Row).Value & ")")
= -1 Then
tes intructions
End If

AV





AV
Le #1268690
Ave MP,

Et pourquoi pas simplement:
If MONTANTDEB * Range("F" & CELL.Row) < 0 then


Ben voui... pourquoi pas justement ?
Trop simple surement et sans pincée d'Evaluate !
:-)
AV

Publicité
Poster une réponse
Anonyme