du code que je ne comprends pas...

  • Initiateur de la discussion Initiateur de la discussion nicolas
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

nicolas

Guest
REbonjour à tous,

j'ai ce petit bout de code dans une macro (qui marche) mais je le comprends pas très bien :

L = WScible.Range("A65536").End(xlUp).Row + 1

Set Plage = WScible.Range("A1:A" & WScible.Range("A65536").End(xlUp).Row)

For Each Cell In Plage
If Cell = Numero_fiche Then
L = Cell.Row
End If

Quelqu'un pourrait-t'il m'éclairer?
merci d'avance
koko
 
Salut Nicolas, le Forum

Tiens çà me dit quelque chose cette manière de nommer les variables ...

Cependant tu as mis des "morceaux disparates" de différentes brides d'une procédure ou carrément de plusieurs procédures ! Ce qui rend d'autant plus compliquées les explications à donner ...

Donc attention, tel quel, ces trois instructions n'ont strictement rien à voir entre elles (De plus il manque les déclarations du Type de ces variables)

L = WScible.Range("A65536").End(xlUp).Row + 1
Signifie que l'on initialise "L" comme étant une variable (de type Integer (éventuellement Long)) qui représente la dernière Ligne Vide de la Colonne "A" en partant du bas + 1... Le plus 1 car on veut la première Ligne Vide, vraissemblablement pour écrire dedans....

Set Plage = WScible.Range("A1:A" & WScible.Range("A65536").End(xlUp).Row)
Signifie que l'on initialise "Plage" comme étant une Variable Objet de type Range qui représente donc bien une Range de la Cellule "A1" à la dernière Ligne Vide de la Colonne "A" en partant du bas...On appelle çà définir une Plage de Cellules dynamiquement

For Each Cell In Plage
If Cell = Numero_fiche Then
L = Cell.Row
End If

Signifie que l'on fait une boucle pour chaque "Cell" (étant entendu que "Cell" a été déjà déclaré As Range) dans une "Plage" qui aura été définie préalablement comme étant un Objet de type Range qui représente bien une Range et dont la taille a été déja déclarée.
Ensuite Si la valeur de cette "Cell" égale bien la valeur d'une variable "Numero_fiche" (qui à ce stade pourrait être de type String mais pourrait aussi être également numérique : Integer, Double, etc) la condition est remplie !!!
Si la condition est remplie on envoie dans une Variable "L" (ne pouvant être qu'une variable de type Integer (éventuellement Long)), le numéro de la Ligne de la Variable "Cell"... Ceci pour identifier où se trouve la Cellule qui "Match"


Voilà pour les explications... Je ne suis pas sûr que ce sera plus clair pour toi, mais n'oublie pas non plus l'aide VBA (touche [F1])

Bonne Fin d'Aprèm
@+Thierry
 
Merci c'est les explications que je voulais...

d'ailleurs si tu vas faire un tour sur le fil Que pensez vous de ca? (re : liens entre classeurs), j'ai une petite kestion qui te concerne en fin de fil.
a plus
koko
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
230
Réponses
5
Affichages
478
Retour