Microsoft 365 Automatisation - Copier coller

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 !

MCenpls

XLDnaute Nouveau
Bonjour à tous,

J'aimerais automatiser le copier coller d'un fichier Excel.

En effet, je dois copier coller en valeur (car formules) les données d'une feuille à une autre puis refaire la même manip pour copier coller ces mêmes données en liste.

J'aimerais gagner du temps et arrêter cette manipulation et voir si possible l'automatiser.

Je vous mets un fichier Excel avec les données calculées (colorées en jaune) et le résultat que j'aimerais.

Si vous avez des idées, je suis preneuse.

Bonne journée 🙂
 

Pièces jointes

Bonjour MCenpls,
J'ai supposé qu'il fallait transférer la plage jaune, et que celle ci était de taille fixe.
Un essai en PJ avec cette macro qui s'exécute automatiquement lorsqu'on sélectionne la feuille "Résultat souhaité" :
VB:
Sub Worksheet_Activate()
Cells.Clear
T = Sheets("Data").[A3:D8]
For i = 1 To UBound(T)
    For j = 1 To UBound(T, 2)
        Cells(j, i) = T(i, j)
    Next j
Next i
[A1].CurrentRegion.Borders.Weight = xlThin
End Sub
Mais on peut mettre l'exécution sur demande si cette solution ne vous va pas.
 

Pièces jointes

Bonjour,

Merci beaucoup pour votre réponse et pour le temps que vous avez pris pour répondre à ma question.

Cependant, je pense n'avoir pas assez détaillé ma problématique.

En réalité, la partie jaune est aléatoire et change en fonction des noms que j'aurais sur une période.
De même je vais avoir plusieurs tableaux sur différentes feuilles avec les mêmes calculs.
Et a chaque fois c'est une nouvelle feuille que je créer, je rajoute ensuite par un copier coller les informations dans "Résultat souhaité" au fur et à mesure de l'année.

J'ai fais un second Excel avec un exemple.

Pensez-vous que cela est possible ?
 

Pièces jointes

Re,
Difficile à deviner. 🙂
Un nouvel essai en PJ. Avec :
VB:
Sub CopyPaste()
T = ActiveSheet.[A3].CurrentRegion
With Sheets("Résultat souhaité")
    L = .Cells(.Cells.Rows.Count, "A").End(xlUp).Row
    For i = 2 To UBound(T)
        For j = 1 To UBound(T, 2)
            .Cells(L + j, i - 1) = T(i, j)
        Next j
    Next i
    .[A1].CurrentRegion.Borders.Weight = xlThin
    .Rows(L + 1).Delete Shift:=xlUp
    Erase T
End With
End Sub
La macro se lance par ALT+F8 et CopyPaste, ou vous mettez un bouton sur chaque feuille pour faire le transfert.
J'ai supposé que sur chaque feuille c'était les mêmes items.
 

Pièces jointes

Super merci beaucoup 🙂, c'est carrément ce style d'automatisation que je souhaite.

Par contre lorsque je créer une nouvelle feuille avec mes "calculs jaunes", l'automatisation ne fonctionne pas, est ce qu'il va falloir que j'alimente la VBA à chaque fois que je créer une nouvelle feuille?

De même, les items ne sont pas toujours les mêmes.

Est-ce que vous avez une autre idée ?
 
Troisième message avec trois spécifications différentes. Donc il y a peu de chances que ça s'arrête.
Il est impossible de converger. Vos PJ ne sont pas représentative. A chaque fois il faut recommencer.
De même, les items ne sont pas toujours les mêmes.
Alors cette macro ne peut pas marcher, il vous en faut une autre. Donc je recommence ?
En fai non. En espérant que quelqu'un de plus patient, et plus perspicace, passe par là. 🙂
 
- 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
10
Affichages
250
Réponses
4
Affichages
327
  • Question Question
Microsoft 365 Code VBA
Réponses
6
Affichages
661
Retour