Aide formule VBA

Résolu/Fermé
gambleway Messages postés 9 Date d'inscription lundi 5 octobre 2015 Statut Membre Dernière intervention 29 février 2016 - 25 févr. 2016 à 08:41
gambleway Messages postés 9 Date d'inscription lundi 5 octobre 2015 Statut Membre Dernière intervention 29 février 2016 - 25 févr. 2016 à 09:53
Bonjour,

Je dois optimiser une macro déja existante. J'ai récupéré deux fragments de code VBA ( je sais que ce n'est pa forcément trés indiqué ) que j'essaie de comprendre.
L'un de vous peut-il m'aider à traduire cette ligne en franÇais correct ?

Dim Number_employees As Byte
Number_employees = 0
While Len(Range("A103").Offset(Number_employees, 0).Value) <> 0
Number_employees = Number_employees + 1
Wend

Dim m As Byte
m = Number_employees
While Range("A103").Offset(m, 0).Value <> "Legend"
Range("A103:G103").Offset(m, 0).Interior.ColorIndex = 0
m = m + 1
Wend

Merci d'avance et bonne journée.

2 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 25/02/2016 à 09:05
Bonjour,

Le code que tu as pompé est loin d'^tre idéal....

grossomodo
Number_employees = 0
While Len(Range("A103").Offset(Number_employees, 0).Value) <> 0
Number_employees = Number_employees + 1
Wend

Le nombre d'employés est inférieur à 256 (Dim Number_employees As Byte )tant que la longueur du mot est différente de Zéro:
Ajouter 1 au nombre d'employé

Le deuxième fait pareil avec le test la celule est différente de " légend"
mais
m= ajoute 1 à m (au départ M=nbre d'employés)
et met le numéro de la couleur à 0 (je vérifie: ca me semble bizarre) --->
le cellules sont colorées au départ

Si par exemple tu as 240 employés et plus de 15 "légend" ca plante pour dépassament de capacité ( m déclaré en Byte)

concluusion: Très mauvais code
 Michel
0
gambleway Messages postés 9 Date d'inscription lundi 5 octobre 2015 Statut Membre Dernière intervention 29 février 2016
25 févr. 2016 à 09:53
Merci pour ton aide rapide une fois de plus.
Bonne journée à toi
0