Appliquer code VBA à toutes les lignes

Bonjour,

Je voudrais me faire un tableau de suivi avec des indicateurs de couleurs et quantifier par la suite ces indicateurs. Je ne connais pas spécialement le langage VBA, je me suis donc inspiré des aides de ce forum mais là je suis bloqué je ne trouve pas.

Voici mon problème, j'ai réalisé un code sur la ligne 9 et je voudrais l'appliquer jusqu'à la ligne 1100 (sur le même principe).

trois couleurs:

Orange lorsque 'une mission est commencé

Rouge lorsqu'une date de livraison est dépassé

Vert lorsque la mission est terminé

Je vous fait suivre le fichier excel, le code se trouve dans la feuille "Suivi" puis les cellules à complété sont en fluo

Merci d'avance pour vos réponses

57tableau-de-suivi.xlsm (244.70 Ko)

Bonjour,

Tu peux remplacer un numéro de ligne fixe (9, dans ton cas) par un indice variable.

Par exemple :

Range("A9")
'Devient
For i = 9 To 100 
   Range("A" & i)
Next i

Bonsoir,

avez vous regardez également sur ce site le cours sur les MFC (Mise en Forme Conditionnelle) ?

Ces MFC pourraient très bien faire l'affaire sans VBA !

Après s'il vous faut des stats sur les différents points, il est vrai que tester une couleur par MFC n'est pas chose aisée, mais alors des SOMMEPROD peuvent venir faire l'office. Le plus important étant de bien définir les différentes choses au départ.

@ bientôt

LouReeD

salut LouReeD,

tu joues les prolongations d'la fête d'Halloween, avec ta citrouille ?

t'as p't'être gardé ton déguisement d'sorcier ?

dhany

Et je ne vous raconte même pas ce que j'ai pour la saint Catherine !

@ bientôt

LouReeD

Merci Pedro22 ça fonctionne nickel, je me suis tellement pris la tête pour ça.

LouReeD je ne voulais pas le faire avec la MFC parce que ça ne compte pas les couleurs et puis comme je risque de partager mon fichier, je voudrai avoir le moins de formules possible visible

Encore merci à vous

Bonjour,

Tu peux remplacer un numéro de ligne fixe (9, dans ton cas) par un indice variable.

Par exemple :

Range("A9")
'Devient
For i = 9 To 100 
   Range("A" & i)
Next i

Bonjour,

Est-ce que c'est le même principe quand c'est pour étendre sur plusieurs colonnes ?

Cordialement.

Bonjour,

Est-ce que c'est le même principe quand c'est pour étendre sur plusieurs colonnes ?

Cordialement.

Bonjour,

La syntaxe actuelle fait référence à la colonne par le biais d'une lettre, ce qui n'est pas très pratique à intégrer dans une boucle...

On peut procéder comme ceci :

Range("A9")
'Devient :
For Col = 1 To 10 
   Cells(9, Col) = "Truc"
Next Col

Pour une plage de plusieurs cellules :

Range("A9:B10")
'Devient :
For Col = 1 To 10 
   Range(Cells(9, Col), Cells(10, Col + 1))
Next Col

Attention au nom de feuille si la macro travaille sur une feuille spécifique et potentiellement différente de la feuille active.

Merci pour votre réponse donc pour la cellule AK10, est que ça devient bien :

For Col = 37 to 100

Cells (10, Col) = ma_date

Next Col

Merci pour votre réponse donc pour la cellule AK10, est que ça devient bien :

For Col = 37 to 100

Cells (10, Col) = ma_date

Next Col

Oui à priori c'est bien ça !

Rechercher des sujets similaires à "appliquer code vba toutes lignes"