OVH Cloud OVH Cloud

Utilisation de la propriété End(xlDown)

3 réponses
Avatar
Poclain
Bonjour à tous,
si j'ai dans la colonne "A" uniquement la cellule "A1" de remplie,
le calcul de ma variable :
ligne_a_remplir = Range("a1").End(xlDown).Row
me donne 65536
alors qu'en fait le résultat devrait me donner = 1.
Quelqu'un peut-il m'expliquer ce que je ne comprend pas.
Merci

3 réponses

Avatar
Nicolas B.
Salut,

Le résultat donné est normal (même s'il n'est pas forcément très
logique) : lorsque tu appuies sur CTRL + FLÈCHE BAS alors qu'A1 est
sélectionnée, tu te retrouves bien en bas du tableau (en 65536).

Pour solutionner ton problème, tu peux t'en sortir autrement : par
exemple, si A1:An est remplie (pas de cellules vides et que An+1:A65536
est vide, alors tu peux utiliser :

Range("A65536").End(xlUp).Row


A+
Nicolas B.

Bonjour à tous,
si j'ai dans la colonne "A" uniquement la cellule "A1" de remplie,
le calcul de ma variable :
ligne_a_remplir = Range("a1").End(xlDown).Row
me donne 65536
alors qu'en fait le résultat devrait me donner = 1.
Quelqu'un peut-il m'expliquer ce que je ne comprend pas.
Merci




Avatar
Poclain
Effectivement ce n'est pas trés logique.
Pour remédier à cela, j'ai rempli la cellule A2.
Mais je pense qu'à l'avenir j'utiliserai ta solution.

Merci pour ton aide.

"Nicolas B." a écrit dans le message
de news:
Salut,

Le résultat donné est normal (même s'il n'est pas forcément très logique)
: lorsque tu appuies sur CTRL + FLÈCHE BAS alors qu'A1 est sélectionnée,
tu te retrouves bien en bas du tableau (en 65536).

Pour solutionner ton problème, tu peux t'en sortir autrement : par
exemple, si A1:An est remplie (pas de cellules vides et que An+1:A65536
est vide, alors tu peux utiliser :

Range("A65536").End(xlUp).Row


A+
Nicolas B.

Bonjour à tous,
si j'ai dans la colonne "A" uniquement la cellule "A1" de remplie,
le calcul de ma variable :
ligne_a_remplir = Range("a1").End(xlDown).Row
me donne 65536
alors qu'en fait le résultat devrait me donner = 1.
Quelqu'un peut-il m'expliquer ce que je ne comprend pas.
Merci




Avatar
Jacquouille
Bonsoir
Afin de contrer cela, mais aussi le fait que l'on puisse avoir une cel vide
dans la plage (auquel cas, il tombe dans le panneau), les anciens (Excel5,
paléo supérieur) ont trouvé plus judicieux de commencer par la 65536 ° cel
et de remonter avec Range("A65536").End(xlUp).Row
comme l'a très bien dit Nicolas
Bonne chance
--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/

Jacquouille.

"Poclain" a écrit dans le message de news:
44d2177c$0$1019$
Effectivement ce n'est pas trés logique.
Pour remédier à cela, j'ai rempli la cellule A2.
Mais je pense qu'à l'avenir j'utiliserai ta solution.

Merci pour ton aide.

"Nicolas B." a écrit dans le message
de news:
Salut,

Le résultat donné est normal (même s'il n'est pas forcément très logique)
: lorsque tu appuies sur CTRL + FLÈCHE BAS alors qu'A1 est sélectionnée,
tu te retrouves bien en bas du tableau (en 65536).

Pour solutionner ton problème, tu peux t'en sortir autrement : par
exemple, si A1:An est remplie (pas de cellules vides et que An+1:A65536
est vide, alors tu peux utiliser :

Range("A65536").End(xlUp).Row


A+
Nicolas B.

Bonjour à tous,
si j'ai dans la colonne "A" uniquement la cellule "A1" de remplie,
le calcul de ma variable :
ligne_a_remplir = Range("a1").End(xlDown).Row
me donne 65536
alors qu'en fait le résultat devrait me donner = 1.
Quelqu'un peut-il m'expliquer ce que je ne comprend pas.
Merci