Centralisation de données de 3 classeurs

Bonjour à tous,

J'ai beau chercher, je sèche complètement

Je crée un dashboard automatisé pour ma boite et souhaite compiler les données issues de 2 classeurs sur un 3ème.

Tous les traitements sont ok (test indépendants des macros) mais je n'arrive pas à:

  • ouvrir un classeur depuis celui qui centralise
  • traiter les données (ça c'est ok)
  • copier
  • revenir sur le classeur qui centralise
  • coller
  • répéter pour le dernier classeur

Pour info, les classeurs peuvent être dans des dossiers qui varient.

J'ai donc essayé:

1.

Dim Dashboard as Workbook

Set Dashboard = thisWorkbook

Dim données1 as Workbook

Workbooks.Open Application ....(ouvre une boite de dialogue pour sélectionner le fichier)

Set données1 = ThisWorkbook

Dim données2 as Workbook

Workbooks.Open Application ....

Set données2 = ThisWorkbook

2.

idem avec à la place de ThisWorkbook pour données1 et données2

ActiveWorkbook.Name = données1

ActiveWorkbook.Name = données2

Tout se passe bien jusqu'au moment ou la macro doit changer de classeur via un Workbooks(un-des-3-classeurs).Activate (avec ou sans le workbook)

Je ne vois vraiment pas comment résoudre cela, pourtant cela semble si simple !

Merci d'avance.

Cdt,

Julien

Bonjour

Il ne peut y avoir que ActiveWorkbook à la fois

Attention code fait de mémoire : Il y a surement des erreurs

Dim Dashboard as Workbook, données1 as Workbook
Set Dashboard = thisWorkbook
Workbooks.Open Fichier1
Set données1 = ActiveWorkbook
' ensuite tu copies tes données
 'exemple
données1.Sheets(1).Range("A1:A10").Copy Dashboard.sheets("Récap").Range("A" & Ligne)
Ligne = Ligne +10
' Fermeture du fichier
données1.Close savechanges:=False
'
'
' Ensuite tu passes au 2ème fichier
Workbooks.Open Fichier2
Set données1 = ActiveWorkbook
' ensuite tu copies tes données
 'exemple
données1.Sheets(2).Range("A1:A10").Copy Dashboard.sheets("Récap").Range("A" & Ligne)
' Fermeture du fichier
données1.Close savechanges:=False

Pour les points obscurs tu as l'aide

Génial, ça fonctionne parfaitement!

Pour info, pour enlever le message d'alerte du presse papier, j'ai juste ajouté:

application.displayalerts = false

avant la fermeture de chaque classeur puis

application.displayalerts = true

après (par sécurité)

une énorme MERCI, je t'offre ce café virtuel à défaut de mieux -> \_/

Rechercher des sujets similaires à "centralisation donnees classeurs"