Signet Word via VBA Excel et suppression ligne vide

Bonsoir a tous,

Ayant trouvé pas mal de réponse à mes questions, je reviens sur ce forum pour un point bloquant. J'ai parcourus beaucoup de forum sur ce sujet, mais aucune réponse ne résout mon probleme.

Voila, J'ai deux fichier (1 Excel et 1 Word), placé au même endroit.

Sur le fichier Excel (éditeur de déroulé), je dispose d'un formulaire qui permet de choisir quelle partie de mes cellules contenue dans sa "feuil1" doit être recopiés dans le fichier Word, qui contient des signets. (J'ai réduit le nombre de cases a cochées et de signet pour l'exemple).

Le souci, c'est qu'il arrive de temps a autre que tous les signets ne soient pas remplies malgré les cases à cochées bien vérifiées, et c'est le nom du signet qui est affiché en lieu et place.

Deuxième petite question, lorsque je ne souhaite pas afficher une ou deux parties, je n'arrive pas à faire remonter les parties suivante vers le haut du document. C'est à dire de supprimer les lignes des signets non cochées.

Je vous propose mes deux fichiers (très réduit) pour vous faire une meilleur idée.

Espérant que quelqu'un aura un piste de résolution.

Bonne soirée.

Bonsoir

Le document Word a du texte mais pas de signets, le document excel idem

Dans le code Excel, on compte deux signets "Titre" et "Date" mais pas sûr qu'ils sont représentés dans les des deux documents joints.

Dans le code on retrouve Bookmarks("C0"), Bookmarks("C1"), Bookmarks("C2"), ... Bookmarks("Phase_1"), Bookmarks("Phase_2"), Bookmarks("Phase_3") ...

On ne comprend pas quelle est la logique, aucun test de présence des signets, ni de création s'ils n'existent pas.

J'en reste là, car on ne comprend pas le besoin concernant les signets : on n'est pas dans du publipostage.

Dim WordApp, WordDoc
            Set WordApp = CreateObject("word.application")  
    Set WordDoc = WordApp.Documents.Open(ThisWorkbook.Path & "\Exemple\" & "Test.docx")  'ouvre le document Word
    WordApp.Visible = False  
WordDoc.Bookmarks("Signet1").Range.Text = Cells(ligne, col)

On error resume next 'pour passer un signet qui n'existerait pas

WordDoc.Bookmarks("Signet1").Range.Text = Cells(5, 3)

Bonsoir Scraper,

Merci de ton retour.

Pour répondre à vos remarques d'hier soir, je vous assure avoir définis des signets sur un document Word que j'ai créé. Preuve et quand je clique sur "Atteindre" les signets dans Word, celui me les trouvent.

Bref, j'ai continuer à travailler dessus et j'ai trouvé pourquoi, quelque fois, mes tableaux ne s'affichaient pas et laisser le titre du signet. En fait dans mon fichier Excel, les lignes commençaient par une cellule vide. Donc, j'ai fusionné toutes les cellules d'une même ligne (celle sur laquelle je point le signet) et la je n'ais plus de bug d'affichage.

Ce qui reste à solutionner c'est que les cellules (phase ou commentaire) n'ont souhaitées (cases non cochées dans le formulaire) ne doivent pas laisser trop de ligne vide entre les tableaux. Je souhaite qu'il n'y est qu'une seule ligne entre chaque partie.

Espérant mes idées sont bien retranscrits dans ce texte.

Cordialement

Bonsoir christian8021

Je ne suis pas des plus assidu, avez-vous résolu votre problème?

Rechercher des sujets similaires à "signet word via vba suppression ligne vide"