macro copiercoller d'un classeur à l'autre, emplacement à définir par...

hellle

XLDnaute Nouveau
Bonjour à tous, :)

Encore merci à ce super forum d'exister, il m'a permis d'avancer beaucoup, que ce soit par consultation -très souvent- ou parfois, comme aujourd'hui, sur appel à l'aide

Voici un descriptif de ce que je voudrais faire : il s'agit d'automatiser le renvoi du nom d'une personne, d'un classeur administratif A à un classeur planning X (B, C, ou D, etc...).
En A, les deux cellules AU2 et AU3 (noms issus d'une formule) sont copiées, par un clic sur un bouton en H7 (ça c'est fait)
Ensuite, l'utilisateur après selection dans la liste de validation col K, clique sur le lien correspondant qui apparait en col L pour ouvrir le classeur B, (ça aussi c'est fait)
dans le but d'y coller les noms, possiblement sur n'importe laquelle des 13 feuilles de planning du classeur B, dont la colonne devra être determinée à chaque collage ( par message box ?) par l'utilisateur, mais toujours sur les lignes 36-37.

J'ai 3 problèmes :
1- toujours nulle en macro
2- le "coller" sur 2éme classeur ne fonctionne qu'en "coller" excel, pas avec l'enregistreur de macro, donc déja, ça commence mal :eek:
3- écrire en vba que le coller doit toujours s'effectuer en lignes 36-37
mais qu'un message box doit demander sur quelle feuille, et quelle colonne, voilà qui est bien au delà de mes capacités... si c'est possible ?

Enfin, dernière question, la sélection de la liste de validation peut-elle être prise en compte par la macro, le clic sur le bouton H7 déclenchant alors d'abord le copier, puis l'ouverture du fichier choisi ?
 

Pièces jointes

  • classeur A.xlsm
    42.8 KB · Affichages: 111
  • classeur B.xlsm
    40 KB · Affichages: 106
  • classeur A.xlsm
    42.8 KB · Affichages: 118
  • classeur B.xlsm
    40 KB · Affichages: 97
  • classeur A.xlsm
    42.8 KB · Affichages: 124
  • classeur B.xlsm
    40 KB · Affichages: 104

hellle

XLDnaute Nouveau
Re : macro copiercoller d'un classeur à l'autre, emplacement à définir par...

Bonsoir, JPB, (ouf, tu es là !:D)


l'utilisateur doit pouvoir choisir entre 14 onglets différents, dont le nom peut de surcroit changer (via macro), le classeur contenant 17 onglets au total (j'avais joint la presque totalité du classeur dans le second envoi, je crois).
La copie se fera dans l'onglet choisi, puis dans les onglets suivants, jusqu'au 14éme, mais ça, j'avais me semble-t-il trouvé, avec un loop while...
 
Dernière édition:

jpb388

XLDnaute Accro
Re : macro copiercoller d'un classeur à l'autre, emplacement à définir par...

RE
tu as raison j'avais bêtement gardé l'ancien classeur B
sinon comme d'habitude remplace l'ancienne par la nouvelle
Code:
Sub INSCRIREPLANNING()
'
' INSCRIREPLANNING Macro
' copie du nom de l'agent sous ses deux formes
' par bouton de commande "enregistrer"
' avant clic sur lien nouveau service
Dim Fichiers, Filtre$, Planning$, Classeur$, Col%
Dim Reponse As Range, Feuille$
Classeur = ActiveWorkbook.Name
Filtre = "Fchiers Excel (*.xlsx;*.xlsm;*.xls),*.xlsx;*.xlsm;*.xls"
If Workbooks.Count = 1 Then
    Fichiers = Application.GetOpenFilename(Filtre, 1, "Sélection du classeur Planning")
    If Fichiers = False Then
        Exit Sub
    Else
        Workbooks.Open (Fichiers)
        Planning = ActiveWorkbook.Name
    End If
Else
    Planning = Workbooks(2).Name
End If
    Workbooks(Planning).Activate
 Set Reponse = Application.InputBox(" Sélectionnez la feuille et cliquez sur une cellule de la colonne de votre choix", "Colonne", , , , , , 8)
    Col = Reponse.Column
    Feuille = Reponse.Parent.Name
    Workbooks(Classeur).Sheets("Feuil2").Range("AU2:AU3").Copy
    Workbooks(Planning).Sheets(Feuille).Cells(36, Col).PasteSpecial Paste:=xlPasteValues
    Workbooks(Classeur).Activate
End Sub
quand l'inputbox s'affichera sélectionnez n'importe quelle feuille et cliquez sur la bonne colonne
a+
jp
 

Discussions similaires

Statistiques des forums

Discussions
312 165
Messages
2 085 882
Membres
103 010
dernier inscrit
Sys974