Identifier la dernière cellule par macro

  • Initiateur de la discussion Initiateur de la discussion Vilain
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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:
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.
 
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
 
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.
 
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
 
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
 
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 ?
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
836
Retour