OVH Cloud OVH Cloud

si > 51 exécute

5 réponses
Avatar
Daniel
Bonjour à tous
je voudrais exécuter une macros à la condition que le contenue
de la cellule qui est active est un nombre et est plus grande que 51.

Le nom de la macro est " entre_deux".

Merci

5 réponses

Avatar
anonymousA
bonjour,

exemple sur la cellule A1

Au cas où, on met le lancement de macro sur les 2 evenements Calculate
et Change de la feuille dans laquelle se situe la cellule que l'on
scrute. Dans Worksheet_Change, Application.enableventsúlse est là pour
eviter de lancer 2 fois ta macro au cas où tu changes le résultat de A1
à la main en écrivant p.e R au lieu de 52 seulement.
Ceci dit, si ta macro introduit des changements dans les cellules, il
sera sans doute aussi nécessaire d'écrire Application.enableventsúlse
dans la procédure Worksheet_Calculate.

Private Sub Worksheet_Calculate()

if isnumeric(range("A1").value) and range("A1").value>51 then
'lancer la macro
end if

end sub

Private Sub Worksheet_Change(ByVal Target As Range)

if target.address(0,0)="A1" then Application.enableventsúlse

if isnumeric(range("A1").value) and range("A1").value>51 then
'lancer la macro
end if

Application.enablevents=true

end sub


Enfin ,s'il s'agit par l'intermédiaire d'un autre objet ou d'un autre
lancement de controler si la cellule A1 est numérique et possède une
valeur >51, les mêmes instructions de controle en début de macro peuvent
être utilisées.

A+

Bonjour à tous
je voudrais exécuter une macros à la condition que le contenue
de la cellule qui est active est un nombre et est plus grande que 51.

Le nom de la macro est " entre_deux".

Merci




Avatar
pierre.meb
Bonsoir,
En début de macro, mettre une condition IF qui se termine avant le END SUB

Sub entre_deux()
If ActiveCell.Value > 51 Then

.....
.......

End If
End Sub




"Daniel" a écrit dans le message de
news:
Bonjour à tous
je voudrais exécuter une macros à la condition que le contenue
de la cellule qui est active est un nombre et est plus grande que 51.

Le nom de la macro est " entre_deux".

Merci




Avatar
Daniel
Bonjour pierre.meb

Oui cela marche .
Mais a la place d'arrêter la macros je voudrais qu'elle sélectionne la
cellule plus bas
et ceci jusqu'a ce qu'elle trouve une cellule vide.
Merci.

"pierre.meb" a écrit dans le message de news:
433825fe$0$16546$
Bonsoir,
En début de macro, mettre une condition IF qui se termine avant le END SUB

Sub entre_deux()
If ActiveCell.Value > 51 Then

.....
.......

End If
End Sub




"Daniel" a écrit dans le message de
news:
Bonjour à tous
je voudrais exécuter une macros à la condition que le contenue
de la cellule qui est active est un nombre et est plus grande que 51.

Le nom de la macro est " entre_deux".

Merci








Avatar
Daniel
Bonjour pierre.meb

Je m'explique un peu!

Lorsque la cellule contien un chiffre plus grand que 51,
la macro s'exécute, et si plus petit on passe a la suivante
(une cellule plus bas).
Car j'ai une liste de plus de 3000 ligne et je doit exécuté
la macro sur les ligne >51.
ce la est t'il plus clair !!

Merci

"Daniel" a écrit dans le message de news:
%
Bonjour pierre.meb

Oui cela marche .
Mais a la place d'arrêter la macros je voudrais qu'elle sélectionne la
cellule plus bas
et ceci jusqu'a ce qu'elle trouve une cellule vide.
Merci.

"pierre.meb" a écrit dans le message de news:
433825fe$0$16546$
Bonsoir,
En début de macro, mettre une condition IF qui se termine avant le END
SUB

Sub entre_deux()
If ActiveCell.Value > 51 Then

.....
.......

End If
End Sub




"Daniel" a écrit dans le message de
news:
Bonjour à tous
je voudrais exécuter une macros à la condition que le contenue
de la cellule qui est active est un nombre et est plus grande que 51.

Le nom de la macro est " entre_deux".

Merci












Avatar
Sitting Hoax
Bonjour
ceci conviendrait-il ?

Sub SUP_51()
For Each cell In Range("a1:" & Range("a65536"). _
End(xlUp).Address)
If cell > 51 Then
'tamacro
End If
Next
End Sub

Amicalement
Sitting Hoax
"Daniel" a écrit dans le message de news:

Bonjour pierre.meb

Je m'explique un peu!

Lorsque la cellule contien un chiffre plus grand que 51,
la macro s'exécute, et si plus petit on passe a la suivante
(une cellule plus bas).
Car j'ai une liste de plus de 3000 ligne et je doit exécuté
la macro sur les ligne >51.
ce la est t'il plus clair !!

Merci

"Daniel" a écrit dans le message de news:
%
Bonjour pierre.meb

Oui cela marche .
Mais a la place d'arrêter la macros je voudrais qu'elle sélectionne la
cellule plus bas
et ceci jusqu'a ce qu'elle trouve une cellule vide.
Merci.

"pierre.meb" a écrit dans le message de news:
433825fe$0$16546$
Bonsoir,
En début de macro, mettre une condition IF qui se termine avant le END
SUB

Sub entre_deux()
If ActiveCell.Value > 51 Then

.....
.......

End If
End Sub




"Daniel" a écrit dans le message de
news:
Bonjour à tous
je voudrais exécuter une macros à la condition que le contenue
de la cellule qui est active est un nombre et est plus grande que 51.

Le nom de la macro est " entre_deux".

Merci