Microsoft 365 Créer une Document Word à partir de champs et listes

TB_AHE

XLDnaute Nouveau
Bonjour tout le monde,

J'ai besoin de mettre en place la création automatique d'un fichier Word récapitulant les opérations de Gammes en fonction de celles qui auront été sélectionnées dans un fichier Excel existant.

Je m'explique en détail en me basant sur le fichier en pièce jointe :

Une Feuille nommée "Base_Sans_Fréquence" répertorie toutes les opérations de Gammes de maintenance existantes (nom et codes)
Une autre feuille nommée "Article" répertorie tous les matériels en place.
Une dernière feuille nommée "Sélection" présente un tableau permettant à l'utilisateur de sélectionner le Matériel (colonne A) et de voir automatiquement remonter le code de la Gammes appliquée à cet équipement dans la colonne B (Gamme) via RECHERCHEV.
Il lui est demandé de renseigner la fréquence de maintenance dans la colonne C

J'aurais besoin de mettre en place une Macro permettant la création d'un document Word listant :
- les Gammes présentes dans la colonne B de la feuille "Sélection" en modifiant le code existant en fonction de la fréquence indiquée :
Si Semestrielle est renseigné alors le XXX dans le code est remplacé par SEM
Si Annuelle est renseigné alors le XXX dans le code est remplacé par ANN
- les intitulés des opérations liées aux gammes sélectionnées (Feuille "Base_Sans_Fréquence" colonne D "OPERATION"), ainsi que leur code (Feuille "Base_Sans_Fréquence" colonne G "FK_CODE_OPERATIONCATALOG")

L'idéal serait qu'il n'y ait pas de doublons de gammes dans le document Word, si possible.

Quelqu'un parmi tous les dieux du VBA aurait-il une macro en poche pouvant répondre à ce besoin s'il-vous-plaît ?

Par avance je vous remercie pour l'attention que vous porterez à ma demande.

Bonne journée
 

Pièces jointes

  • Classeur_Test_Création_Doc_Gammes.xlsx
    62.6 KB · Affichages: 12

TB_AHE

XLDnaute Nouveau
Bonjour job75,

Je me doutais que ce ne serait pas assez clair...

Voici en PJ un exemple de fichier Word dont le but est seulement de reprendre le Nom du matériel, le code de la Gamme associée (adapté en fonction de la fréquence renseignée) et les opérations liées.

Mon exemple est sous forme de tableau dans lequel l'utilisateur pourra venir ajuster la fréquence des opérations si besoin en décalant les croix présentes.

Mais pour répondre à votre question on pourrait tout à fait avoir le résultat sous Excel dans un 1er temps en effet.

C'est juste qu'au final tout ceci se retrouvera sur un fichier Word, avec un copier/coller ce serait tout à fait envisageable ou alors il faudrait certainement faire un modèle Word .dotm j'imagine.

Est-ce un peu plus clair avec le fichier joint ?

Merci d'avance.
 

Pièces jointes

  • Base_Test.docx
    35.2 KB · Affichages: 7
C

Compte Supprimé 979

Guest
Bonjour @TB_AHE,
Voici en PJ un exemple de fichier Word dont le but est seulement de reprendre le Nom du matériel, le code de la Gamme associée (adapté en fonction de la fréquence renseignée) et les opérations liées.

Et bien justement, @job75 que je salue à raison, pourquoi vouloir utiliser un document Word !?

Avec une feuille supplémentaire qui ne servira que pour l'impression, c'est simple et efficace

A+
 

job75

XLDnaute Barbatruc
Bonjour TB_AHE, Bruno,

Au post #1 vous parliez de SEM et ANN, dans le fichier Word ce n'est pas utilisé.

Et il y a 9 types de périodicité et non pas 2.

Enfin un fichier Word n'est vraiment pas utile.

Tout cela manque de cohérence, je ne vais pas plus loin.

A+
 

TB_AHE

XLDnaute Nouveau
Bonjour TB_AHE, Bruno,

Au post #1 vous parliez de SEM et ANN, dans le fichier Word ce n'est pas utilisé.

Et il y a 9 types de périodicité et non pas 2.

Enfin un fichier Word n'est vraiment pas utile.

Tout cela manque de cohérence, je ne vais pas plus loin.

A+
Bonjour job75,

SEM est bien repris dans le fichier WORD, merci de revérifier dans le fichier (voir le code de la gamme à côté de l'intitulé).
Je vous ai mis un exemple avec 2 gammes, donc ANN n'est pas présent, car ce n'était qu'un exemple de tableau reprenant les informations de l'Excel.

Je n'ai jamais demandé 9 périodicités mais bien seulement 2 qui ont comme unique impact la modification du code de la Gamme au dessus du tableau.
Comme je l'ai dit dans mon message les 9 périodicités que vous évoquez sont à remplir ou modifier par l'utilisateur si besoin, elles n'ont pas à être gérées par la Macro, sachant que 95% des gammes ont une maintenance Annuelle ou Semestrielle.

Vous aviez dit qu'il serait plus simple de rester sur Excel, vous abandonnez donc sans même proposer une macro pour le faire ? 🤔

Merci quand même, bonne journée.
 

vgendron

XLDnaute Barbatruc
Hello @job75 , @BrunoM45

@TB_AHE comme indiqué par job et Bruno, il y a un manque de cohérence dans ta demande et ton fichier

1) je rejoins ce qui a été dit: un doc WORD est inutile==> tout peut se faire en Excel (pour peu que tu ne demandes pas non plus une présentation trop compliquée de tes tableaux

2) ==> j'ai donc créé la feuille "Gamme" qui est celle que tu vas imprimer (l'impression pourra être lancée automtiquement ultérieurement)

3) il me semble que tu as beaucoup trop de tableaux avec infos redondantes
==> pourquoi ne pas garder UN tableau dans la feuille Article sur lequel tu ajoutes au moins 2 colonnes
périodicité + Gamme

4) pour les périodicités
4-1) tu en as bien défini 9... Journalière, bi mensuel, mensuelle....
4-2) il faut choisir.. Périodicité OU fréquence (pb de cohérence)
4-3) soit tu les mets au masculin soit au féminin: Semestriel ou Semestrielle==> d'ou la table que j'ai ajouté et qui sert ensuite pour alimenter des listes de validation

ton besoin d'imprimer tel ou tel matériel est dicté par quoi?
selon la réponse, soit un refait une table pour lister les matériels à imprimer (la macro fera une boucle sur cette liste)
soit tu ajoutes encore une nouvelle colonne dans Article pour y mettre une croix en face des matériels
 

Pièces jointes

  • Classeur_Test_Création_Doc_Gammes.xlsm
    81.3 KB · Affichages: 2

TB_AHE

XLDnaute Nouveau
Hello @job75 , @BrunoM45

@TB_AHE comme indiqué par job et Bruno, il y a un manque de cohérence dans ta demande et ton fichier

1) je rejoins ce qui a été dit: un doc WORD est inutile==> tout peut se faire en Excel (pour peu que tu ne demandes pas non plus une présentation trop compliquée de tes tableaux

2) ==> j'ai donc créé la feuille "Gamme" qui est celle que tu vas imprimer (l'impression pourra être lancée automtiquement ultérieurement)

3) il me semble que tu as beaucoup trop de tableaux avec infos redondantes
==> pourquoi ne pas garder UN tableau dans la feuille Article sur lequel tu ajoutes au moins 2 colonnes
périodicité + Gamme

4) pour les périodicités
4-1) tu en as bien défini 9... Journalière, bi mensuel, mensuelle....
4-2) il faut choisir.. Périodicité OU fréquence (pb de cohérence)
4-3) soit tu les mets au masculin soit au féminin: Semestriel ou Semestrielle==> d'ou la table que j'ai ajouté et qui sert ensuite pour alimenter des listes de validation

ton besoin d'imprimer tel ou tel matériel est dicté par quoi?
selon la réponse, soit un refait une table pour lister les matériels à imprimer (la macro fera une boucle sur cette liste)
soit tu ajoutes encore une nouvelle colonne dans Article pour y mettre une croix en face des matériels

Bonjour vgendron,

Avant tout merci pour le temps accordé à cette demande, je vais tâcher de répondre à tes questions ou commentaires :

1) Plusieurs fois j'ai indiqué que rester sur Excel me convenait.

2) C'est Top, merci beaucoup

3) En effet, en copiant la liste d'articles dans la colonne Matériel de la feuille "Sélection" on peut supprimer la feuille "Article" ?

4) Alors je le redis, jamais je n'ai demandé à agir sur les 9 périodicités du tableau final, ma notion de Fréquence (certes un doublon de la périodicité du tableau du rendu) est une autre information uniquement là pour venir transformer le code des Gammes, devant idéalement apparaître au dessus du tableau.
Par exemple : CHAU_XXX_07 + fréquence Annuelle = CHAU_ANN_07.
Vu que cela semble poser problème à tout le monde, n'en tenez pas compte, c'est secondaire.
Pour la notion de Masculin / Féminin, on est bien sur un détail, qui sera corrigé dans un 2ème temps.

L'impression est guidée par le choix de l'utilisateur en fonction du contrat sur les équipements (Matériel) qu'il gère.
La solution de rajout d'une colonne dans laquelle il viendrait mettre une croix pour sortir les gammes et leurs opérations sur une même feuille serait tout à fait approprié !

Encore merci.
 

vgendron

XLDnaute Barbatruc
ce que tu penses etre du détail, ne l'est pas du tout..
quand on fait une recherche de texte, si la syntaxe n'est pas la meme, vba ne trouvera pas

voir en PJ
feuille Article: tu mets un X en face des matériels à imprimer
en face de chaque périodicité, j'ai mis le trigramme à utiliser pour remplace les XXX du numéro de gamme

tu vas ensuite sur la feuille GAMME et tu cliques
 

Pièces jointes

  • Classeur_Test_Création_Doc_Gammes.xlsm
    94.2 KB · Affichages: 7

TB_AHE

XLDnaute Nouveau
ce que tu penses etre du détail, ne l'est pas du tout..
quand on fait une recherche de texte, si la syntaxe n'est pas la meme, vba ne trouvera pas

voir en PJ
feuille Article: tu mets un X en face des matériels à imprimer
en face de chaque périodicité, j'ai mis le trigramme à utiliser pour remplace les XXX du numéro de gamme

tu vas ensuite sur la feuille GAMME et tu cliques

Au TOP !!! 👏👏🤗

Je vais voir comment récupérer ce magnifique résultat pour pouvoir l'adapter au document Word de destination dans un 2ème temps.

Pour la notion de détail, je comprends tout à fait et voulais tout simplement dire qu'il suffisait de faire un choix entre masculin ou féminin puis corriger les incohérences dans le fichier...chose que j'étais à même de faire contrairement à la macro nécessaire pour générer les gammes.

Merci beaucoup en tout cas pour le temps accordé.

Je te souhaite une belle journée.
 

vgendron

XLDnaute Barbatruc
pour la partie impression (toujours sans word)

ca se résume à ca


VB:
Sub Imprimer()
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
End Sub

après.. il faut surement optimiser pour
1) définir les sauts de page pour éviter qu'ils tombent en plein dans une table
2) demander le nom et l'emplacement de sauvegarde...
 

TB_AHE

XLDnaute Nouveau
@TB_AHE quand on est obtu on le reste hein 🤪

Pouvez-vous nous expliquer la vision des choses pour vous,
pour vouloir absolument utiliser un document Word 🤔

A+
Je vous renvoie le compliment...

Puisque vous êtes si curieux, ces gammes vont devoir venir s'insérer dans un autre document Word déjà existant (ça m'est imposé !) contenant des informations administratives règlementaires, etc...

C'est bon pour vous ?

Encore Merci mille fois à vgendron qui apporte un oeil critique mais propose des solutions concrètes 😉

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 819
Messages
2 092 377
Membres
105 383
dernier inscrit
Hyorish