Publipostage : si cellule contient au moins "nuit" alors

MulotProspere92 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
m@rina Messages postés 27916 Date d'inscription   Statut Modérateur Dernière intervention   -

Bonjour,

Je ne parviens pas à trouver comment demander à word de résoudre ça :

Si dans les cellules de la colonne "métier" il y a le mot nuit, alors Y€

J'ai des métiers de nuits (Aide de nuit, surveillant de nuit...) qui doivent tous avoir Y€, et dans la même colonne du fichier excel de publipostage il y a bien sûr d'autres métiers qui ne sont pas de nuit eux. Mais en mettant nuit sous le format *nuit*, ça ne fonctionne pas. Est-ce une demande trop poussée pour du publipostage ou auriez-vous une solution ?

Merci d'avance pour votre aide !
Windows / Edge 144.0.0.0

2 réponses

  1. Bruno83200_6929 Messages postés 725 Date d'inscription   Statut Membre Dernière intervention   170
     

    Bonjour,

    Champ à insérer dans Word

    Très important :
    Les accolades { } ne doivent PAS être tapées au clavier.
    Il faut les insérer avec Ctrl + F9.

    Champ IF à utiliser

    { IF { =INSTR(1; "{ MERGEFIELD métier }"; "nuit") } > 0 "Y€" "X€" }
    

    Explication rapide :

    INSTR cherche le mot nuit dans le champ métier

    Si trouvé → retourne une position > 0

    Donc → Y€

    Sinon → X€


    0
    1. Nain_Porte_Quoi Messages postés 178 Date d'inscription   Statut Membre Dernière intervention   40
       

      Ca sens la réponse d'une IA ça... et à ma connaissance Word n'a pas de champ INSTR sauf la fonction Instr en VBA 

      Vous avez testé ?

      Rappel : IA = Idiotie Avérée

      0
      1. brucine Messages postés 25287 Date d'inscription   Statut Membre Dernière intervention   4 190 > Nain_Porte_Quoi Messages postés 178 Date d'inscription   Statut Membre Dernière intervention  
         

        Bonjour,

        En effet.

        La situation est décrite par exemple ici:

        https://microsoft.public.word.mailmerge.fields.narkive.com/pRmQbW2A/using-if-to-find-whether-a-merge-field-contains-a-substring

        On trouve des synthèses de différentes approches par exemple ici:

        https://learn.microsoft.com/en-us/answers/questions/4941560/can-if-statements-use-contains-as-a-function-and-i

        En dehors du VBA les solutions les moins capillotractées semblent a et d; celle en a passe par tester l'emplacement de la chaîne recherchée en utilisant en tête 1, 2, ..n caractères génériques, elle va bien sûr considérablement ralentir l'exécution avec une condition à chaque fois et devenir impraticable si cette chaîne se trouve loin dans le texte.

        La solution la plus évidente si le fichier Excel est modifiable est d'y créer une colonne qui dit "nuit" ou un caractère spécifique quelconque pour les postes concernés, à la main ou ce qu'on peut cette fois-ci automatiser.

        C'est bien sûr plus facile si les chaînes s'appellent "nuit aide soignant" au lieu de "aide soignant de nuit", mais auquel cas on peut aussi facilement utiliser la solution a puisque la recherche se fait toujours sur le même nombre de caractères à la même position.
         

        0
  2. m@rina Messages postés 27916 Date d'inscription   Statut Modérateur Dernière intervention   11 570
     

    Bonjour

    Effectivement, c'est du délire IA !! ;) Pas de champ INSTR dans Word. Microsoft ne s'est pas embêté à faire ! :(

    Le plus simple est d'ajouter une colone dans le fichier Excel.

    m@rina


    0