Bonjour à tous,
Vous m'avez déjà appris énormément que ce soit en programmation Word ou Excel malgré mon ignorance et je suis surpris de votre réactivité, je vous remercie infiniment de votre dévotion envers la programmation !

Je cherche à automatiser l'export de tableaux Excel (pouvant être de tailles différentes) de différents onglets : un tableau par onglet, vers un fichier word vierge.

Je recherche principalement à exporter la totalité des tableaux sur un document word vierge nommé "Fiches_sondages_word.docx" pour pouvoir faire un CTRL + A puis couper pour coller sur le fichier destinataire final. Je pense qu'il y a une méthode plus simple sans passer par un "fichier vierge temporaire" mais je pense que c'est le plus simple à faire sachant que le fichier destinataire final a de fortes probabilités de changer de nom...

Pourquoi ?
Parce qu'il est probable qu'il y ait une 60taines d'onglets comportant un tableau précis.. Et que la sélection du tableau, copier en tant qu'image, sélection de la fenêtre word, coller et redimensionner, mettre un saut de page, retourner sur l'excel, changer d'onglet, sélectionner le tableau ..... etc etc... peut être très chronophage et surtout assez simple à automatiser.

Pour cela, j'ai piqué certains morceaux de codes que j'avais déjà programmer mais sur d'autres documents du style word pour du Excel et mes compétences en boucle sont clairement limitées...

Informations :
Mon fichier Excel se nomme "Investigations.xls" et les onglets "Fiches_sondages_S1" pour la 1ère, "Fiches_investigation_S2" pour la 2ème ... etc etc... jusqu'à un nombre variable d'onglets
Mon fichier temporaire est vierge et se nomme "Fiches_sondages_word.docx"
Mon fichier destinataire final lui, sera complété à la main par mon CTRL +A / CTRL + C(ou X) puis CTRL + V de mon fichier temporaire à mon fichier destinataire final


Objectifs :
1) Automatiser la sélection du tableau, même si les dimensions changent, avec un Copier en tant qu'image : DONE

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Dim Fin As Long
Fin = ActiveSheet.UsedRange.SpecialCells(xlLastCell).Row
Range("B2:J" & Fin).CopyPicture Appearance:=xlScreen, Format:=xlPicture
(Merci Menhir car ça marche à la perfection)

2) Pouvoir exécuter la macro avec uniquement le classeur Excel d'ouvert, que le fichier word temporaire s'ouvre tout seul dès l'exécution de la macro : En cours, j'essaie d'adapter un programme qui marche sur Word mais j'arrive pas à l'appliquer à Excel et j'ai ça pour le moment :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub Macro()
Set Wordapp = CreateObject("word.Application")
Wordapp.Visible = True
Wordapp.Documents.Open FileName:="/Users/aurelienmeriot/Desktop/Fiches_sondages_word.docx"
Wordapp.Activate
 
 
Documents("Investigations").Activate 'Démarrage du C/C de Excel vers Word
Worksheets("Fiche-sondage_S1").Activate
Dim Fin As Long
Fin = ActiveSheet.UsedRange.SpecialCells(xlLastCell).Row 'Sélection du tableau et Copier en tant qu'image
Range("B2:J" & Fin).CopyPicture Appearance:=xlScreen, Format:=xlPicture
 
Documents("Fiches_sondages_word").Activate 'Changement de fenêtre pour coller (Excel à Word)
 
Selection.Paste
Selection.InsertBreak Type:=wdPageBreak 'Ajout d'un saut de page
 
Documents("Investigations").Activate 'Changement de fênetre (Word à Excel)
Worksheets("Fiche-sondage_S2").Activate 'Changement d'onglet
 
Etc...Etc... (boucle)
 
End Sub
3) Mettre les image en forme sur le Word mais cette étape est le cadet de mes soucis

Mais une fois de plus, rien ne marche et pour optimiser tout ça il faudrait mettre sous forme de boucle ou de conditions pour pouvoir s'arrêter lorsque le dernier onglet est dépasser ^^'

Je suis très bien conscient que je suis loin d'avoir la réflexion de progra, et que vous avez 10 000 solutions tellement plus simple que la mienne, c'est pour cela que je me tourne vers votre expertise.

Je vous remercie d'avance de votre participation à mon projet.