tester les valeurs d'une plage en VBA

jopont

XLDnaute Impliqué
Bonjour,

J'aimerais tester si une des valeurs d'une plage nommé ( [nb_jour]) est supérieur strictement à 3.
Qu'est ce que cela donne en VBA ?
Le résultat du test étant un msg box?

merci
 

fanfan38

XLDnaute Barbatruc
Re : tester les valeurs d'une plage en VBA

Bonjour
En VBA les plages nommées ne sont pas utilisées
En considérant que la colonne concernée est la A, ça donne
Sub test()
For i = 1 To Range("a65536").End(xlUp).Row
If Cells(i, 1).Value <= 3 Then
MsgBox ("ligne " & i & " le chiffre est inférieur ou égale à 3")
End If
Next
End Sub

A+ François
 

skoobi

XLDnaute Barbatruc
Re : tester les valeurs d'une plage en VBA

Bonjour,

par exemple:

Code:
Sub test()
For Each Cellule In [nb_jour]
  If Cellule.Value > 3 Then MsgBox "La cellule " & Cellule.Address(0, 0) & " est supérieure à 3."
Next
End Sub
 

jopont

XLDnaute Impliqué
Re : tester les valeurs d'une plage en VBA

J'ai mis exactement ça dans thisworkbook et ça ne fonctionne pas

Sub test_jour_naissance()
For i = 1 To Range("bv65536").End(xlUp).Row
If Cells(i, 1).Value > 3 Then
MsgBox ("La cellule " & Cellule.Address(0, 0) & " est supérieure à 3.")

End If
Next
End Sub

La première cellule à tester est en BV4
 

skoobi

XLDnaute Barbatruc
Re : tester les valeurs d'une plage en VBA

Re,

Et avec mon code (qui prend en compte ta plage nommée)?

Edit: un conseil, quand tu crés un code, mets le dans un module (Insertion>Module)
 
Dernière édition:

jeanpierre

Nous a quitté
Repose en paix
Re : tester les valeurs d'une plage en VBA

Bonsoir fanfan, skoobi, jopont,

"qu'il faut que je test BV4:BV65 sur 10 feuilles de mon classeur"

Ce qui n'a jamais été dit.

A bonne question, bonne réponse.

Bon WE tout de même.

Jean-Pierre
 

jopont

XLDnaute Impliqué
Re : tester les valeurs d'une plage en VBA

oui désolé, mais ça ne fonctionne deja pas pour une feuille.
J'ai essayé les deux solutions

Sub test()
For Each Cellule In [BV4:BV65]
If Cellule.Value > 3 Then MsgBox "La cellule " & Cellule.Address(0, 0) & " est supérieure à 3."
Next
End Sub

ET

Sub test_jour_naissance()
For i = 4 To Range("bv65536").End(xlUp).Row
If Cells(i, 1).Value > 3 Then
MsgBox ("La cellule " & Cellule.Address(0, 0) & " est supérieure à 3.")

End If
Next
End Sub
 

roro69

XLDnaute Impliqué
Re : tester les valeurs d'une plage en VBA

Bonsoir ;petit code à essayer
Sub Compte()
Compteurv = 0
Dim Macellule As Object 'Déclaration d'une variable
For Each Macellule In Range("nb_jour") 'Boucle dans la plage
If Macellule > 3 Then Compteurv = Compteurv + 1
Next Macellule
MsgBox "Il y a " & CStr(Compteurv) & " Valeurs supérieurs à trois"
End Sub

Bonne soirée
 

jopont

XLDnaute Impliqué
Re : tester les valeurs d'une plage en VBA

Bon je vais essayer de m'expliquer plus clairement ( c'est pas gagné!)

En cellule BV4 je récupère via une formule un nombre de jour ( NB SI .....)
Cette formule est recopiée de BV4 à BV65.
Le chiffre n'est pas saisi par l'utilisateur.
Simplement je veux qu'il soit averti.

Si je met vos différents code vba en this workbook ou sur la feuille, je n'ai pas de résultat concluant.

Pour info d'autre procédure VBA fonctionne déjà sur mon fichier

Désolé mais je ne peux pas joindre le fichier : trop volumineux

merci
 

jeanpierre

Nous a quitté
Repose en paix
Re : tester les valeurs d'une plage en VBA

Re tous,

Désolé, je ne comprends rien.

A part un truc du genre "rigolard... enfin bof", il n'y a rien.

Tu "t'as planté" dans l'envoi du fichier...

Réédite ton message, supprime le fichier joint et remplace le par un plus sérieux.
 

Discussions similaires

Réponses
12
Affichages
302

Statistiques des forums

Discussions
312 182
Messages
2 086 003
Membres
103 084
dernier inscrit
Hervé30120