Bonjour à tous,
J'ai un fichier excel dans lequel j'écris les listes d'ingrédients des produits que je vends. Ma liste d'ingrédients est écrite dans la cellule C8. Je voudrais que les allergènes se mettent en gras dans cette cellule via à une macro. J'ai donc tenté avec le code suivant trouvé sur ce forum :
Sub Beurre ()
Range("C8").Characters(InStr(1, Range("C8").Value, "beurre"), Len("beurre")).Font.Bold = True
End Sub
Or j'ai 3 problèmes avec ce code :
1) Si le mot beurre n'apparaît pas dans ma liste d'ingrédient, ce sont les 6 premières lettres de ma liste d'ingrédients qui se mettent en gras
2) Si j'ai du beurre de cacao dans ma recette, par exemple dans la composition de mon chocolat, le mot "beurre" se met en gras alors que le beurre de cacao ne contient pas d'allergène...
3) Mon système est plutôt long à l'exécution puisque j'ai avoir une macro par ingrédient allergène (blé, avoine, épeautre, beurre, lait, noisettes, amandes, noix du brésil, et une dizaine d'autres).
Partant de ces observations je voudrais :
- que la macro ne mette rien en gras si le mot n'est pas du tout rencontré, en tout cas pas dans les conditions exigées
- pouvoir mettre en gras le mot beurre uniquement lorsqu'il n'est pas suivi des mots "de cacao". Mais je voudrais que s'il est suivi par exemple des mots "de baratte" ou "demi-sel", là il se mette en gras.
- pouvoir rassembler l'ensemble des macros sous une seule et même macro qui se nommerait par exemple "allergènes"
Je ne suis pas du tout connaisseuse des macros et j'avoue ne pas comprendre grand chose aux codes que je vois et sur lesquels je vois écrit "à adapter" . Ne sachant même pas à quoi correspond chaque terme, j'ai bien du mal à adapter à mon fichier... Si quelqu'un pouvait m'aider ce serait vraiment super !
Merci d'avance :)
Lana