Copier un plage de cellules depuis un classeur fermé
Bonjour,
Je ne connais pas grand chose en VBA et je viens donc chercher un peu d'aide.
Voici mon problème : je dois réaliser un planning général qui contient le planning de tous les services de mon entreprise. Il faut que ce planning se remplisse automatiquement grâce aux plannings des différents services.
Tous les plannings sont de la même forme et je souhaiterais donc avoir un bouton (dans le classeur planning général) par exemple qui me permettrait de faire un copier coller de la plage souhaitée sur chaque planning des services vers le planning général.
En sachant que le copier coller doit fonctionner lorsque les différents fichiers plannings des services (source du copier) seront fermées mais tous dans le même dossier.
Le copier coller doit conserver la mise en forme à savoir les couleur de fond des cellules et la fusion des cellules.
Sachant que les plannings par service sont rempli par fusion des cellules et sélection dans un menu déroulant. (voir fichier joint)
J'ai essayé d'enregistrer une macro en copiant et collant manuellement les cellules, elle fonctionne mais que lorsque tous les fichiers sont ouverts.
J'espère être assez claire, n'hésitez pas si vous avez des questions. Je vous joins un fichier planning général et 2 fichiers plannings services. (en réalité j'aurais environ 5 plannings de service)
Merci pour votre aide qui me serait précieuse
Salut,
J’ai cherché une solution à ta demande.
Je suis parti du principe que tes fichiers et tes feuilles se présente exactement comme tu les as montrés. Si ce n’est que j’ai modifié le nom de ta feuille du fichier ‘’Planning général’’ et le nom en A12 de cette feuille.
Ainsi, si tu places tes trois fichiers dans le même dossier et que tu lances la macro en place sur la feuille ‘’Base’’, tes fichiers annexes sont ouverts et refermés sans que tu le remarques et les données sont transférées.
Petit problème pour l’instant : si une donnée à transférer s’étale sur plusieurs jours, elle n’est reportée que sur le premier jour.
J’ai ouvert un autre fil sur le Forum afin de demander de l’aide à ce sujet.
Dis-moi déjà ce que tu penses de ce qui est déjà réalisé.
Amicalement.
Bonjour,
Merci beaucoup pour ta réponse.
Ton fichier fonctionne (sauf quand les tâches durent plusieurs jours comme tu l'a dit) en revanche j'ai oublié de préciser que les plannings sont remplis par chaque responsable de service donc ils peuvent être potentiellement ouvert sur un autre poste lorsque je demande le transfert, le programme fonctionne-t-il toujours dans ce cas là ?
Merci !
Aucune idée, il faudrait faire un essai. Je n'ai pas une telle infrastructure qui me permette de tester cela.le programme fonctionne-t-il toujours dans ce cas là ?
J'ai reçu des réponses intéressantes sur mon autre fil pour ce problème de cellules fusionnées, mais ça va me prendre du temps d'adapter ces idées à ton fichier, car je vais être assez occupé ces prochains temps. J'espère que ça puisse attendre quelques jours.
Chaleureusement.
Je vais tester dans cette configuration.
Je suis également occupée par d'autre sujets.
Merci pour ton aide
Amicalement
Finalement ça a été plus vite que prévu. J'ai obtenu de l'aide sur cet autre fil et j'ai pu l'adapter à ton fichier.
Contrairement à ce que je t'ai dit, tes fichiers annexes doivent absolument être nommés "Planning XXX" et non pas "Planning XXX Forum".
Dans le fichier ci-joint, tu peux donc reporter des cellules fusionnées des fichiers annexes au fichier de base.
Si tu ajoutes des périodes aux fichiers annexes et que tu relances la macro sans remettre à zéro, ces nouvelles périodes sont simplement ajoutées.
Cependant, si tu modifies des périodes – par exemple 3 jours au lieu de 5 – ça va bloquer et si du effaces une période sur le fichier annexe, elle ne sera pas effacée dans le fichier de base. Si de telles situations sont possibles, il faudra revoir le code en conséquence.
Bien à toi.
Merci pour ta réponse. Cela fonctionne et va beaucoup m’aider pour la suite !
À bientôt