Identifier la dernière cellule par macro

Vilain

XLDnaute Accro
Bonjour à tous,

J'ai un petit souci avec ma macro.
J'ai des données dans ma colonne O.
J'ai des intitulés de colonnes sur ma première ligne.
Je cherche à identifier la cellule de ma dernière ligne et de ma dernière colonne.
Je fais ça pour le moment :

DerLigne = Range("O" & Rows.Count).End(xlUp).Row
DerColonne = Range("XFD" & Columns.Count).End(xlToLeft).Column
DerCellule = Range("DerColonne" & "DerLigne")

Le but ici est de tirer de ma cellule P2 à ma dernière cellule via :
Range("P2").AutoFill Destination:=Range("P2:" & DerCellule)

Je n'arrive pas à trouver où se situe l'erreur.
Une âme charitable pour m'aider ?

Merci par avance
 
Dernière édition:

Papou-net

XLDnaute Barbatruc
Re : Identifier la dernière cellule par macro

Bonsoir Vilain,

Remplace le "Range" par "Cells".

Ex:

Code:
DerLigne = Range("O" & Rows.Count).End(xlUp).Row
DerColonne = Range("XFD" & Columns.Count).End(xlToLeft).Column
DerCellule = Cells(DerLigne, DerColonne)
Cordialement.
 

Vilain

XLDnaute Accro
Re : Identifier la dernière cellule par macro

Bonsoir Papou,

C'est parfois si logique que je passe à travers...
Merci beaucoup.
Par contre j'ai maintenant une erreur sur cette ligne :
Range("P2").AutoFill Destination:=Range("P2:" & DerCellule)

Encore merci
 

Papou-net

XLDnaute Barbatruc
Re : Identifier la dernière cellule par macro

RE:

Ah oui, je pense qu'il faut définir DerCellule en tant qu'objet Range:

Code:
DerLigne = Range("O" & Rows.Count).End(xlUp).Row
DerColonne = Range("XFD" & Columns.Count).End(xlToLeft).Column
Set DerCellule = Cells(DerLigne, DerColonne)
Ensuite, j'essaierais comme ceci:

Code:
Range("P2").AutoFill Destination:=Range(Range("P2:"), DerCellule)
A+

Cordialement.
 

Tentative

XLDnaute Occasionnel
Re : Identifier la dernière cellule par macro

Bonjour,

Je n'ai réussit qu'en faisant deux étapes :

Une tentative :
Code:
Dim DerLigne, DerColonne As Integer

DerLigne = Range("O" & Rows.Count).End(xlUp).Row
DerColonne = Cells(DerLigne, Columns.Count).End(xlToLeft).Column

Range("P2").Select
Selection.Copy
Selection.AutoFill Destination:=Range(Cells(2, 16), Cells(DerLigne, 16)), Type:=xlFillDefault

Range(Cells(2, 16), Cells(DerLigne, 16)).Select
Selection.Copy
Selection.AutoFill Destination:=Range(Cells(2, 16), Cells(DerLigne, DerColonne)), Type:=xlFillDefault
Range("P2").Select


Tentative
 

Tentative

XLDnaute Occasionnel
Re : Identifier la dernière cellule par macro

Bonjour,

Tu nous mentionnais (post #1) que tu sélectionnais les nombre de lignes sur la colonne "O".
Dans ton exemple, je dois le faire sur la colonne "P" (à moins que je n'ai rien compris à ta demande).

Code:
Dim DerLigne, DerColonne As Integer

DerLigne = Range("P" & Rows.Count).End(xlUp).Row
DerColonne = Cells(2, Columns.Count).End(xlToLeft).Column  ' légèrement modifié

Range("P2").Select
Selection.Copy
Selection.AutoFill Destination:=Range(Cells(2, 16), Cells(DerLigne, 16)), Type:=xlFillDefault

Range(Cells(2, 16), Cells(DerLigne, 16)).Select
Selection.Copy
Selection.AutoFill Destination:=Range(Cells(2, 16), Cells(DerLigne, DerColonne)), Type:=xlFillDefault
Range("P2").Select


Tentative
 

Vilain

XLDnaute Accro
Re : Identifier la dernière cellule par macro

Re,
non, tu as bien compris, j'ai juste mal créé mon exemple, désolé...
Par contre quand je colle ton code, ça ne fonctionne toujours pas. J'avoue ne pas comprendre.
Tu peux poster le tien que je comprenne mon erreur ?
 

Discussions similaires

Réponses
7
Affichages
312

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 811
dernier inscrit
caroline29260