OVH Cloud OVH Cloud

xlCellTypeLastCell......BIZARRE

5 réponses
Avatar
Nico Iannizzi
Bonjour à toutes et à tous,

Dans la colonne "A" j'ai des valeurs numériques.
J'exécute une première fois le code suivant:

Sub test()
x = Range("A:A").Cells.SpecialCells(xlCellTypeLastCell)
Range("B1").Value = x
End Sub

Résultat: En "B1" j'ai effectivement la dernière valeur (valeur de la
cellule A30).

Mais, quand j'exécute le même code une deuxième fois, la cellule
B1 devient vide,.... je ne comprends pas.

Quelqu'un peut m'éclairer ?
Merci de vos commentaires

Nico Iannizzi
P.S. Version Excel 2002

5 réponses

Avatar
Daniel
Bonjour.
La cellule sélectionnée la seconde fois est la cellule B30 :
- dernière ligne : 30
- dernnière colonne : B
Cordialement.
Daniel
"Nico Iannizzi" a écrit dans le
message de news:
Bonjour à toutes et à tous,

Dans la colonne "A" j'ai des valeurs numériques.
J'exécute une première fois le code suivant:

Sub test()
x = Range("A:A").Cells.SpecialCells(xlCellTypeLastCell)
Range("B1").Value = x
End Sub

Résultat: En "B1" j'ai effectivement la dernière valeur (valeur de la
cellule A30).

Mais, quand j'exécute le même code une deuxième fois, la cellule
B1 devient vide,.... je ne comprends pas.

Quelqu'un peut m'éclairer ?
Merci de vos commentaires

Nico Iannizzi
P.S. Version Excel 2002


Avatar
AV
Laisse tomber urgentement l'utilisation de "xlCellTypeLastCell" !
(et "UsedRange" aussi tant que tu y es !)
Pour ton problème présent,
[B1] = [A65536].End(3).Value
devrait suffire

AV
Avatar
Nico Iannizzi
Bonjour Daniel,

Merci de ta réponse.

Je vois, mais ce que je n'arrive pourtant pas à saisir c'est que la cellule
B30 est
renvoyée bien que dans la macro la plage Range("A:A") est spécifiée.

Cordialement,

Nico Iannizzi


Bonjour.
La cellule sélectionnée la seconde fois est la cellule B30 :
- dernière ligne : 30
- dernnière colonne : B
Cordialement.
Daniel
"Nico Iannizzi" a écrit dans le
message de news:
Bonjour à toutes et à tous,

Dans la colonne "A" j'ai des valeurs numériques.
J'exécute une première fois le code suivant:

Sub test()
x = Range("A:A").Cells.SpecialCells(xlCellTypeLastCell)
Range("B1").Value = x
End Sub

Résultat: En "B1" j'ai effectivement la dernière valeur (valeur de la
cellule A30).

Mais, quand j'exécute le même code une deuxième fois, la cellule
B1 devient vide,.... je ne comprends pas.

Quelqu'un peut m'éclairer ?
Merci de vos commentaires

Nico Iannizzi
P.S. Version Excel 2002







Avatar
Frédo P
Bonjour AV
(et "UsedRange" aussi tant que tu y es !)
AV
Quel est le pb avec UsedRange?


Avatar
Daniel
"Range("A:A").Cells.SpecialCells(xlCellTypeLastCell)" se réfère à la cellule
B30. l'epression est équivalente à entrer la séquence de touches : CTRL+FIN.
Cordialement.
Daniel
"Nico Iannizzi" a écrit dans le
message de news:
Bonjour Daniel,

Merci de ta réponse.

Je vois, mais ce que je n'arrive pourtant pas à saisir c'est que la
cellule
B30 est
renvoyée bien que dans la macro la plage Range("A:A") est spécifiée.

Cordialement,

Nico Iannizzi


Bonjour.
La cellule sélectionnée la seconde fois est la cellule B30 :
- dernière ligne : 30
- dernnière colonne : B
Cordialement.
Daniel
"Nico Iannizzi" a écrit dans le
message de news:
Bonjour à toutes et à tous,

Dans la colonne "A" j'ai des valeurs numériques.
J'exécute une première fois le code suivant:

Sub test()
x = Range("A:A").Cells.SpecialCells(xlCellTypeLastCell)
Range("B1").Value = x
End Sub

Résultat: En "B1" j'ai effectivement la dernière valeur (valeur de la
cellule A30).

Mais, quand j'exécute le même code une deuxième fois, la cellule
B1 devient vide,.... je ne comprends pas.

Quelqu'un peut m'éclairer ?
Merci de vos commentaires

Nico Iannizzi
P.S. Version Excel 2002