VBA : Déterminer la dernière ligne d'un nombre de colonne prédéf
Marine
-
Marine -
Marine -
Bonjour à tous ,
J'ai une question qui je crois est très simple !!! Mais impossible de trouver une réponse depuis hier, et je deviens folle !
Pardonnez mon ignorance sur le sujet...
Question : Quel serait le code pour déterminer la dernière ligne de mes colonnes A B et C sachant que D et E sont déjà remplies ;
A B C D E
x x x x x
x x x x x
........x x
........x x
Je voudrais copier la ligne soulignée (après l'avoir déterminée dans mon code) et la coller jusqu'à la dernière ligne de D (en italique)
Pou l'instant mon code me donne :
SubMacroBoucle ()
derLigne = Sheets("Base CP Semaine").Range([A65000], [C65000]).End(xlUp).Row + 1
Sheets("Base CP Semaine").Range("A" & derLigne).Copy
Range("A65000").End(xlUp).Offset(1).Select
Range("A2:A" & Range("D" & Rows.Count).End(xlUp).Row).PasteSpecial
End Sub
Je voudrais plus quelque chose comme ça :
Sheets("Base CP Semaine").Range("A:C" & derLigne).Copy
Range("A65000:C65000").End(xlUp).Offset(1).Select
Range("??? Pour coller à la suite" & Range("D" & Rows.Count).End(xlUp).Row).PasteSpecial
Merci d'avance pour vos réponses !
Marine
J'ai une question qui je crois est très simple !!! Mais impossible de trouver une réponse depuis hier, et je deviens folle !
Pardonnez mon ignorance sur le sujet...
Question : Quel serait le code pour déterminer la dernière ligne de mes colonnes A B et C sachant que D et E sont déjà remplies ;
A B C D E
x x x x x
x x x x x
........x x
........x x
Je voudrais copier la ligne soulignée (après l'avoir déterminée dans mon code) et la coller jusqu'à la dernière ligne de D (en italique)
Pou l'instant mon code me donne :
SubMacroBoucle ()
derLigne = Sheets("Base CP Semaine").Range([A65000], [C65000]).End(xlUp).Row + 1
Sheets("Base CP Semaine").Range("A" & derLigne).Copy
Range("A65000").End(xlUp).Offset(1).Select
Range("A2:A" & Range("D" & Rows.Count).End(xlUp).Row).PasteSpecial
End Sub
Je voudrais plus quelque chose comme ça :
Sheets("Base CP Semaine").Range("A:C" & derLigne).Copy
Range("A65000:C65000").End(xlUp).Offset(1).Select
Range("??? Pour coller à la suite" & Range("D" & Rows.Count).End(xlUp).Row).PasteSpecial
Merci d'avance pour vos réponses !
Marine
A voir également:
- VBA : Déterminer la dernière ligne d'un nombre de colonne prédéf
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
- Dépassement de capacité vba ✓ - Forum Excel
3 réponses
Bonsoir Marine, bonsoir le forum,
Peut-être comme ça (si j'ai bien compris...) :
Peut-être comme ça (si j'ai bien compris...) :
Sub Macro1() Dim DLA As Integer 'déclare la variable DLA (Dernière Ligne de la colonne A) Dim DLD As Integer 'déclare la variable DLA (Dernière Ligne de la colonne D) Dim B As Worksheet 'déclare la variable B (Onglet "Base CP Semaine) Set B = Sheets("Base CP Semaine") 'définit l'onglet C DLA = B.Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée DLA de la colonne 1 (=A) de l'onglet B DLD = B.Cells(Application.Rows.Count, 4).End(xlUp).Row 'définit la dernière ligne éditée DLD de la colonne 4 (=D) de l'onglet B B.Cells(DLA, 1).Resize(1, 3).Copy B.Range(B.Cells(DLA + 1, 1), B.Cells(DLD, 3)) 'copie/colle la dernière ligne éditée en A End Sub