Excel : Détection dernière ligne d'un tableau

Résolu/Fermé
alainjjb Messages postés 777 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 8 septembre 2024 - 26 juin 2008 à 21:54
 damien59148 - 14 févr. 2018 à 10:21
Bonjour,
je viens de créer (vite dit car c'est un de vous qui me l'avez transmis) une macro d'insertion de ligne en fin de tableau Excel (2 méthodes qui réagissent de la même manière) :
1°) Sub insert1_ligne()
DerniereLigne = (Range("A1").SpecialCells(xlCellTypeLastCell).Row)
ligne = DerniereLigne - 1
Rows(ligne).Select
Selection.Insert Shift:=xlDown
2°) Sub insert2_ligne()
Dim ligne As Long
ligne = (Cells.SpecialCells(xlCellTypeLastCell).Row) - 1
Rows(ligne).Select
Selection.Insert Shift:=xlDown

Au début tout se passe à merveille. La ligne es insérée correctement. Mais lorsque je supprime des lignes du tableau, la dernière ligne est détectée comme si les lignes supprimées existaient tjs.

Quelqu'un peut-il me dire ce qui peut bien se passer ?

Merci d'avance

Alain

3 réponses

m@rina Messages postés 21089 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 20 novembre 2024 11 361
26 juin 2008 à 22:26
Bonsoir,

Le mieux est de partir d'en bas, afin d'atteindre la dernière cellule de la colonne :

Range("A65536").End(xlUp).Offset(1, 0).Select

C'est aussi simple que ça ! ;)

m@rina
26
alainjjb Messages postés 777 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 8 septembre 2024 110
26 juin 2008 à 22:54
Bonsoir M@rina,
c'est aussi simple que ça ... pour toi car je n'ai même pas compris le résultat de cette commande.
A65536 : ce nombre correspond à quoi ? (le nbre maxi de lignes d'un tableau ?)
Range("A65536").End(xlUp).Offset(1, 0).Select : me positionne sur la 1ère cellule de la dernière ligne valorisée ?

Merci pour ces futures précisions

Alain
0
merci M@rina !
trop fort !
0