mcro copier coller en fonction de la dernière ligne non vide de la colonne A

  • Initiateur de la discussion Initiateur de la discussion lmylvc
  • 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 !

lmylvc

XLDnaute Occasionnel
Hello les amis

Je suis en train de construire une macro pour faciliter le travail de collègues et amis,
j'ai déjà bénéficié de l'aide de Pierrot93 et Hippolite pour mes premiers pas, d'ailleurs j'en profite pour les saluer et les remercier une seconde fois.

Voici la macro à son stade actuel :

Windows("INJA01_SG_EN_COURS.xls").Activate
ActiveSheet.UsedRange.Select Selection.Copy
Windows("Raccourci vers tabl marche smed.xls.lnk.xls").Activate
ActiveWindow.SmallScroll Down:=11
Sheets("Avril 2011").Select
Windows("INJA01_SG_EN_COURS.xls").Activate
Windows("Raccourci vers tabl marche smed.xls.lnk.xls").Activate
-->Ici je voudrais que la sélection range Q43 ci-dessous soit remplacée par Range Q et que la ligne soit déterminée en fonction de la dernière cellule non vide le la colonne A-->Range("Q43").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub


Si quelqu'un sait comment faire, merci d'avance
pour son aide.

Vincent 😕
 
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Bonjour,
Code:
dim dl%
dl = Range("A65000").End(xlUp).Row
Range("Q" & dl)...
...indique la cellule de la colonne Q en fonction de la première cellule non vide en remontant la colonne A
A+
kjin
 
Dernière édition:
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Hello

J'ai appliqué sans connaissance en vba la proposition de KJIN que je remercie au passage
(voir ci-dessous en rouge), Malheureusement j'ai un message d'erreur dans le code .

Quelqu'un sait-il pourquoi ?

Sub Macro79()
'
' Macro79 Macro
'

'
Range("Q42:T51").Select
Selection.ClearContents
Windows("INJA01_SG_EN_COURS.xls").Activate
'Range("B5😀9").Select remplacé par la ligne ci-dessous pour sélectionner les
'cellules non vides du fichier d'exportation des données inj etc
ActiveSheet.UsedRange.Select
Selection.Copy
Windows("Raccourci vers tabl marche smed.xls.lnk.xls").Activate
'Range("Q43").Select
Dim dl%
dl = Range("A65000").End(xlUp).Row
Range("Q" & dl)...

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("T43").Select
End Sub
 
Dernière édition:
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Bonsoir,
Code:
Sub Macro79()
Dim dl&
Range("Q42:T51").ClearContents
Windows("INJA01_SG_EN_COURS.xls").Activate
ActiveSheet.UsedRange.Copy
Windows("Raccourci vers tabl marche smed.xls.lnk.xls").Activate
'la feuille de destination devrait être spécifiée !!!
dl = ActiveSheet.Range("A65000").End(xlUp).Row
Range("Q" & dl).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
                        SkipBlanks:=False, Transpose:=False
Range("T43").Select
End Sub
Note que l'on peut grandement optimiser, mais avec si peu d'info...
A+
kjin
 
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Hello KJIN

Merci d'avoir répondu

J'ai appliqué le code mais j'ai un petit pb de débogage
peux-tu stp revérifier le code ?
voici plus d'infos ! qui je l'espère sont compréhensibles

Description du projet :

1) dans le fichier INJA01_SG_EN_COURS.xls").Activate
-->sélectionner les cellules non vides et les copier
2) dans le fichier ("Raccourci vers tabl marche smed.xls.lnk.xls").Activate
Coller les cellules sélectionnées dans la feuille nomée annuel_2011, dans la colonne "Q"
à l'endroitde la première cellule non vide en remontant la colonne A
(ce critère sert à déterminer la ligne)

Voilà, merci d'avance

Vincent
😱
 
Dernière édition:
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Bonsoir,
J'ai appliqué le code mais j'ai un petit pb de débogage
peux-tu stp revérifier le code ?
Revérifier le code ne sert à rien car il est correct; par contre indiquer que l'on a un bug sans indiquer le code d'erreur rencontré ne sert à rien non plus !
1 - quel est le classeur actif (celui qui contient la macro) ?
2 - les classeurs sont-ils bien ouverts ?
...comme je te l'ai déjà dit, nous avons besoin de précision !
A+
kjin
 
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

KJIN

Je constate que mon amateurisme t'exaspère un peu.
Je comprend naturellement cela, toutefois, j'ai la tête dans le
guidon et cela n'arrange pas les choses.

Les réponses à tes questions

1 - quel est le classeur actif : Raccourci vers tabl marche smed.xls.lnk.xls ( ne pas t'inquiéter du nom bizard du fichier)
2- les classeurs sont-ils bien ouverts : oui les deux
le code d'erreur : aucun code erreur n'apparait, seule la ligne suivante est surlignée en jaune :
Range("Q" & dl).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Voilà

Vincent

Je ne sais pas quoi te dire de plus 😱
 
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Bonsoir,
Je constate que mon amateurisme t'exaspère un peu
Non, ce n'est pas le pb, on commence tous un jour
Par contre en ce qui concerne la précision des questions...il faut te mettre à la place du lecteur qui n'a rien sous les yeux
Généralement, lorsqu'un bug apparait, une boite s'affiche qui t'indique le numéro de l'erreur provoquée
Peux tu faire passer un extrait de tes fichiers avec qq données bidons
A+
kjin
 
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Hello les amis,
après un WEEK End chargé, me revoilà pour traiter mon projet

Comme demandé, je vous ai réalisé des fichiers exemples

Regarde la pièce jointe INJA01_SG_EN_COURS.xls
Regarde la pièce jointe tab_March_SMED.xls

Rappel du besoin:

1) Dans le fichier INJA01_SG_EN_COURS.xls sur la feuille "Sous-Etat_INJA01_SG_EN_COURS" (Ce fichier étant systématiquement ouvert donc actif )

-->Je souhaite copier toutes cellules non vides des colonnes B-C-D

2) dans le fichier tab_March_SMED.xls, sur la feuille Saisies_2011
--> Je souhaite coller les données copiées précédement dans la colonne L en fonction de la première cellule non vide en remontant la colonne A

Le code dans son état actuel :

Sub M_Copy_Cut_Inj()
Dim dl
' M_Copy_Cut_Inj Macro

''ci-dessous sélection des cellules non vides des colonnes B-C-D du fichier "INJA01_SG_EN_COURS.xls"
''Pb il sélectionne toutes les colonnes non vides du fichier concerné
Windows("INJA01_SG_EN_COURS.xls").Activate
ActiveSheet.UsedRange.Copy

''ci-dessous indique la cellule de la colonne "L" en fonction de la première cellule non vide en remontant la colonne A
''PB de bug sur ce morceau de code

dl = ActiveSheet.Range("A65000").End(xlUp).Row
Range("L" & dl).Paste

End Sub

Voilà merci d'avance 🙂
 
Dernière édition:
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Bonjour,
Faut pas s'affoler, j'étais dessus.
Attention à la façon de relancer on est des bénévoles, pas d'astreinte 24/24 7/7
VB:
Option Explicit
Sub M_Copy_Cut_Inj()
    Dim dl, dlINJ
''ci-dessous indique la cellule de la colonne "Q" en fonction de la première cellule non vide en remontant la colonne A
    dl = ThisWorkbook.Sheets("Saisies_2011").Range("A65536").End(xlUp).Row
''ci-dessous sélection des cellules non vides des colonnes B-C-D du fichier "INJA01_SG_EN_COURS.xls"
    Workbooks("INJA01_SG_EN_COURS.xls").Activate
    dlINJ = ActiveSheet.Range("A65536").End(xlUp).Row
    ActiveSheet.Range("B9:D" & dlINJ).Copy _
    Destination:=ThisWorkbook.Sheets("saisies_2011").Range("L" & dl + 1)
    ThisWorkbook.Activate
End Sub
A+
 
Re : mcro copier coller en fonction de la dernière ligne non vide de la colonne A

Hippolite

Meeeerrcciiiiiiii, oui, mille fois merci pour ton aide
le code fonctionne parfaitement, enfin je peux avancer dans ce projet.
Pour ce qui concerne mes relances, je suis désolé d'avoir laissé cette impression,
je voulais simplement montrer que je suivais ma demande.

Merci à tous ceux qui ont contribué à ce sujet

a+

Vincent
 
- 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

Retour