Trouver la dernière cellule automatiquement

Fermé
qidikizzy Messages postés 11 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 10 août 2010 - 29 juil. 2008 à 08:02
qidikizzy Messages postés 11 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 10 août 2010 - 29 juil. 2008 à 09:55
Bonjour,
Je suis en train d'éditer une macro pour copier plusieurs feuilles sur une même feuille. Pour la continuité d'enregistrement des données, la plage sélectionnée et copiée depuis la feuille d’origine sur l'autre feuille est à entrer manuellement chaque fois. Cela signifie que la dernière cellule de la plage est à changer chaque fois dans la macro.
La macro est la suite ; la deuxième ligne ("L21") doit être changée à chaque fois que des données sont ajoutées dans la feuille "cutting".

Sheets("cutting").Select
Range("A2:L21").Select
Selection.Copy
Sheets("copie").Select
Range("A2").Select
Selection.Insert Shift:=xlDown
Range("A2:D65536").Select
Application.CutCopyMode = False
Selection.UnMerge
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

Mes compétences de programmation sont limitées ; néanmoins, je souhaiterai quand même avoir cette dernière cellule automatiquement, est-ce possible? (excel 2003)

3 réponses

michel_m Messages postés 16593 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 23 mars 2023 3 292
29 juil. 2008 à 08:21
Bonjour,

Pour trouver la dernière ligne occupée dans une colonne

dim derlig as long
derlig=range("A65536").end(xlup).row

et donc ta cellule

range("A2:L" & derlig)

ou puriste VBA
range(cells(2,1), cells(derlig,12))

bonne journée
Michel
3
qidikizzy Messages postés 11 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 10 août 2010 1
29 juil. 2008 à 09:55
c'est bon mtn, merci bcp.
0
qidikizzy Messages postés 11 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 10 août 2010 1
29 juil. 2008 à 08:43
Merci bcp pour votre réponse, il a l'air sur le bon chemin. Seul problème, il cherche les lignes audessus du A2, non pas en dessous. j'ai changé votre "xlup" à "xldown", ça marche non plus.
1
michel_m Messages postés 16593 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 23 mars 2023 3 292
29 juil. 2008 à 09:09
Euh,

la ligne 65536 n' a pas été mise au hasard... mais il faut qu'il n'y ait rien sous le tableau

en descendant vers la dernière cellule vide en col A


derlig=range("A2").end(xldown).row
1