Mise en majuscule de mots appartenant à 1 liste d'un texte

Bonjour,

Mon titre de sujet me semble pas très compréhensible...

Je vous explique ma problématique :

J'ai une base de données Excel reliée à un logiciel de création d'étiquettes (codesoft pour ne pas le citer), dans cette base, j'ai une colonne contenant la liste des ingrédients.

Dans cette liste d'ingrédients se trouvent des allergènes qui doivent obligatoirement clairement identifiés ce qui signifient qu'ils doivent apparaitre soit en gras, soit soulignés, soit en MAJUSCULES et comme codesoft ne prend pas en compte le formatage des mots, nous avons fait le choix de mettre ces allergènes en MAJUSCULES.

La base étant déjà créée avec les allergènes en minuscules et comprenant pas loin de 200 lignes, je cherche à savoir s'il y a une façon de recopier le texte d'une cellule d'ingrédients en mettant automatiquement en MAJUSCULES certains mots comme gluten, oeuf etc...

Donc en gros, je veux recopier le texte d'une cellule vers une autre cellule en mettant ces mots en majuscules.

Merci pour votre aide.

Bonjour,

Si j'ai bien compris, tout simplement : =MAJUSCULE(la cellule de référence).

Cdlt,

Non justement ça serait trop facile...

Je ne veux pas mettre TOUS les mots en MAJUSCULES mais recopier tout le texte en mettant certains mots en MAJUSCULES.

Exemple :

Texte original = Farines de céréales 35% : blé, riz, avoine (gluten), mais, orge (gluten) ; isolat de protéine de lait. Fabriqué dans un atelier utilisant de l’œuf.

Texte recopié = Farines de céréales 35% : BLE, riz, avoine (GLUTEN), mais, orge (GLUTEN) ; isolat de protéine de LAIT. Fabriqué dans un atelier utilisant de l’OEUF.

Voilà, j'espère que c'est plus clair avec l'exemple.

Bonjour,

Je pense que les experts VBA pourront apporter une solution, cependant il va falloir joindre un fichier type avec un bout de texte, les mots à remplacer, etc ...

Cdlt,

Bonjour,

une exemple qui utilise une fonction personnalisée.

24allergenes.xlsm (14.63 Ko)

Merci h2so4 je pensais exactement à ça.

En espérant que les mots utilisés ne soient pas trop court, ce serait embêtant de se retrouver avec des remplacements non voulus.

Cdlt,

Juste MAGNIFIQUE !!!

Merci beaucoup.

bonjour à tous,

si cela ne convient pas, on peut toujours complexifier pour traiter ces cas.

Attention Rokkoteam, il y a remplacement de toutes les occurrences de la séquence de lettres donc si orgeat est dans le texte et que orge est un allergene orgeat deviendra ORGEat. Donc bien vérifier les transformations !

Bonjour,

J'ai une petite question concernant la formule, le =allergene renvoie à quoi ?

bonjour,

une petite question concernant la formule, le =allergene renvoie à quoi ?

Allergene est le nom de la fonction personnalisée qui prend 2 paramètres (la liste des mots à mettre en capitale et le texte sur lequel l'appliquer)

voici le code de la fonction en VBA

Option Compare Text
Function allergene(liste, texte)
    t = texte
    For Each motmin In liste
        t = Replace(t, motmin.Value, UCase(motmin.Value))
    Next
    allergene = t
End Function

Merci !!!

Je venais juste de comprendre par moi-même :)

Je ne connaissais pas cette notion de fonction personnalisée, c'est génial.

Merci pour votre aide, ça fonctionne dans mon fichier.

Rechercher des sujets similaires à "mise majuscule mots appartenant liste texte"