Range.offset.Value<> problem

Résolu/Fermé
gambleway Messages postés 9 Date d'inscription lundi 5 octobre 2015 Statut Membre Dernière intervention 29 février 2016 - 24 févr. 2016 à 06:55
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 à 02:50
Bonjour,

J'ai recupéré un fichier excel avec des macros. Cependant, je bloque sur une partie du code (ci-dessous). Mon Worksheet prévoit une liste de noms dans un tableau composé d'une colonne. Sur la première ligne de ce tableau est écrit HR LIST. Un peu plus bas dans mon fichier, j'ai un second tableau d'une colonne avec écrit sur la première ligne NOT HR.
Je comprends aue la fonction Range.Offset.Value permet de parcourir le fichier et de récupérer les données dans les cellules.
Cependant, je ne saisi pas à quoi correspondent les parties <> "HR LIST" et <>"NOT HR".
DOis-je comorendre que la boucle s'arrête lorsque j'atteint respectivement les lignes HR LIST et NOT HR ?



Dim nbhr, nbnothr, nb As Integer
nbhr = 0
While Range("A1").Offset(nbhr, 0).Value <> "HR LIST"
nbhr = nbhr + 1
Wend

nbnothr = 0
While Range("A1").Offset(nbnothr, 0).Value <> "NOT HR"
nbnothr = nbnothr + 1
Wend

nb = nbnothr - nbhr - 1



Je vous remercie pour l'aide que vous pouvez éventuellement m'apporter.

1 réponse

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
24 févr. 2016 à 07:11
Bonjour

Toujours se méfier de la récup de macro: une macro est unique pour un seul contexte et pas un autre

Dans ce code, tel qu'il est écrit tu as HR LIST et NOT HR inscrits dans toute la colonne et non une fois en t^te de liste et on fait la différence (nb) de HR LIST et NOT HR

Comme on ne sait pas ce que tu veux faire et sans boule de cristal...

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 à 02:50
Merci pour ton aide Michel, j'ai pu me débrouillé finalement. Ma question était purement technique, c'est pour ca que je ne suis pas rentré dans les details.

Bonne journée
0