Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Fonction OU dans VBA, valeur plus petite ou plus grande

Annetoine

XLDnaute Nouveau
Bonjour,

Après avoir cherché un bon bout de temps, voici mon problème:

Je dois vérifier si 4 cellules sont plus grandes ou moins grandes qu'une valeur donnée. Si une des cellules est VRAIE, alors ça enchaine sur plusieurs commandes après.

J'ai testé ceci :

If Range("G339;G410") < -2 Or Range("G340;G410") > 2 Then
...
...
...
End If


Mais ça ne marche pas >_<
Des idées?

Merci !!!
 
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : Fonction OU dans VBA, valeur plus petite ou plus grande

Bonjour Annetoine,

Bienvenue sur XLD,

Peut-être

Code:
If Range("G339") < -2 Or Range("G410")< -2 or Range("G340") > 2 or Range("G410") > 2 Then

Si pas ça, essaye de fournir plus d'explications et peut-être un bout de fichier
 

Annetoine

XLDnaute Nouveau
Re : Fonction OU dans VBA, valeur plus petite ou plus grande

Merci à tous pour vos réponse !

J'ai également trouvé une solution pendant ce temps
J'ai tout simplement mis :

If G339 < -2 Or G410 < -2 Or G340 > 2 Or G411 > 2 Then
...
...
...
End if

Cette solution fonctionne. J'avais essayé la solution de tototiti2008, mais bizarrement il me mettait un bug...

Mais la solution de Hellboy m'a l'air sympa, ça fait moins machine à gaz.. Je vais tester ça !

Merci à tous pour votre aide en tout cas !
Bon forum
 

Annetoine

XLDnaute Nouveau
Re : Fonction OU dans VBA, valeur plus petite ou plus grande

Voici le code que j'ai pour le moment:

''Choix pressions, -60Pa

If G339 < -2 Or G410 < -2 Or G340 > 2 Or G411 > 2 Then

Sheets("Rapport").Select

Range("E345").Select
ActiveCell.FormulaR1C1 = "-60 à -15Pa par paliers de 5Pa en croissant"

Range("D346").Select
ActiveCell.FormulaR1C1 = "-60"
Range("E346").Select
ActiveCell.FormulaR1C1 = "-55"
Range("D346:E346").Select
Selection.AutoFill Destination:=Range("D346:M346"), Type:=xlFillDefault

Sheets("Rapport Fan testic").Select
Range("C25:L25").Select
Selection.Copy
Sheets("Rapport").Select
Range("D347").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Sheets("Rapport Fan testic").Select
Range("C29:L29").Select
Selection.Copy
Sheets("Rapport").Select
Range("D352").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False


End If

'' Choix pressions -55PA
If G339 >= -2 Or G410 >= -2 Or G340 <= 2 Or G411 <= 2 Then

Sheets("Rapport").Select
Range("E345").Select
ActiveCell.FormulaR1C1 = "-55 à -10Pa par paliers de 5Pa en croissant"

Range("D346").Select
ActiveCell.FormulaR1C1 = "-55"
Range("E346").Select
ActiveCell.FormulaR1C1 = "-50"
Range("D346:E346").Select
Selection.AutoFill Destination:=Range("D346:M346"), Type:=xlFillDefault

Sheets("Rapport Fan testic").Select
Range("D25:M25").Select
Selection.Copy
Sheets("Rapport").Select
Range("D347").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Sheets("Rapport Fan testic").Select
Range("C29:L29").Select
Selection.Copy
Sheets("Rapport").Select
Range("D352").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False


End If


Voila, le texte en rouge correspond à ce qu'il doit faire si valeur VRAIE.
Si la 1ère boucle est juste, il ne doit pas effectuer la 2ème.

Merci !
 

Hellboy

XLDnaute Accro
Re : Fonction OU dans VBA, valeur plus petite ou plus grande

VB:
If G339 < -2 Or G410 < -2 Or G340 > 2 Or G411 > 2 Then
 
'code
ElseIf G339 >= -2 Or G410 >= -2 Or G340 <= 2 Or G411 <= 2 Then '' Choix pressions -55PA
' code

End If
 

tototiti2008

XLDnaute Barbatruc
Re : Fonction OU dans VBA, valeur plus petite ou plus grande

Bonjour soune, Bonjour Hellboy,
Re,

J'ai également trouvé une solution pendant ce temps
J'ai tout simplement mis :

If G339 < -2 Or G410 < -2 Or G340 > 2 Or G411 > 2 Then
...
...
...
End if

Cette solution fonctionne
Je me permet de douter
Encore, s'il y avait des crochets genre

Code:
If [G339] < -2 Or [G410] < -2 Or [G340] > 2 Or [G411] > 2 Then
je ne dis pas, mais sans crochets il m'étonnerait que ça fonctionne
Sinon l'idée de Hellboy avec les Min et Max est bonne aussi
 

Annetoine

XLDnaute Nouveau
Re : Fonction OU dans VBA, valeur plus petite ou plus grande

YESSSS ça marche !


Merci à tous !

Hellboy, c'est bien cela qu'il me fallait, ça marche nikel.

Il me restait encore un soucis, il ne prenait pas en compte la 1ère boucle, la réponse de tototiti2008 a résolu le problème !
Il manquait effectivement mes "[]"

Un grand merci pour votre aide ! Je suis trop content que ça fonctionne
 

Annetoine

XLDnaute Nouveau
Re : Fonction OU dans VBA, valeur plus petite ou plus grande

Aie Aie Aie, nouveau problème ... Petit celui là !

J'ai une celulle contenant la valeur suivant : 19 °C

J'ai besoin de copier et coller uniquement le chiffre, 19, puisqu'il est utilisé dans un calcul par la suite.

J'ai regardé un peu sur les forums, j'ai compris qu'il fallait utilisé la fonction Val, mais je n'arrive pas à la mettre en œuvre
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…