Créer un boucle

Fermé
Tim - 30 avril 2019 à 13:38
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 1 mai 2019 à 10:05
Bonjour,

Dans la colonne "F" il y a des dates au format jj/mm/aaaa.
Il me faut un boucle qui permet :
Si Cells(i,"K") compris entre 0 et 1000, et Année de F< L'année dernière alors
Cells(i, "I")="Problème"

Merci

4 réponses

via55 Messages postés 14512 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 janvier 2025 2 740
30 avril 2019 à 13:54
Bonjour

Pourquoi une macro, une formule en colonne I suffit
=SI(ET(K1>=0;K1<=1000;ANNEE(F1)=2018);"Problème";"")

Sinon boucle selon ce modèle pou boucler des lignes 1 à 500 à adapter :
For i =1 to 500
IF range("K" & i)>=0 and range("K" & i)<=1000 and year ("F" & i)=2018 then range("I" &i)="Problème"
Next 

Cdlmnt
Via
1
Year ("F" & i) ne fonctionnera pas.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 311
Modifié le 1 mai 2019 à 08:35
Bonjour, tim, Via55

si tu veux que ton code soit valable les années suivantes

(Year(Range("F" & i)) = Year(Date) - 1)

et en début de macro
Application.screenupdating=false

pour le confort visuel et la rapidité

signature> Michel</signature>
0
via55 Messages postés 14512 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 janvier 2025 2 740
1 mai 2019 à 09:07
Bonjour à tous

Oui le Range a sauté à l'écriture, arf
Michel tu as raison de compléter ma macro que j'avais indiqué rapidement car comme je le disais des formules suffisent
D'ailleurs d'après ta pertinente remarque il faudrait modifier me formule en remplaçant ANNEE(1)=2018 par ANNEE(F1)=ANNEE(AUJOURDHUI()-)-1 pour une validité perpétuelle

Mais le demandeur n'a pas donné signe de vie encore, on ne sait pas pourquoi il veut une macro
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 311
Modifié le 1 mai 2019 à 10:05
Re, tout à fait d'accord; d'ailleurs je t'avais mis un +

comme le dit un vieux proverbe excellien:
"Avant de penser VBA, penser Excel"

mais il faudrait voir l' ensemble du code pour dire si VBA est justifié

notre ami est peut-^tre parti défiler!

bonne journée
0