Utilisation de la mise en forme conditionnelle pour le texte de correspondance exacte

3

J'essaie d'utiliser la mise en forme conditionnelle pour mettre en surbrillance les cellules d'une colonne qui contient un mot exact avec Excel 2012. Je ne réussis que partiellement avec la fonction "cellules qui contiennent du texte". Le problème est que je veux mettre en évidence uniquement les cellules qui contiennent le mot exact "thé". Cependant, les cellules qui contiennent le mot "à la place" sont également mises en surbrillance car le mot "thé" est à l'intérieur du mot "à la place", ce que je ne veux pas. Je veux seulement mettre en évidence les cellules qui contiennent du "thé". Est-ce possible.

Une autre chose est que je ne veux pas de biais de capitalisation. Je souhaite que les exemples de "thé", "thé" et "thé" soient mis en évidence.

Darren Haynes
la source

Réponses:

2

Pour trouver un mot exact dans une cellule, vous devrez utiliser une fonction VBA. Il ne semble pas y avoir de moyen de le faire avec les seules fonctions Excel.

Plus précisément, la fonction suivante semble bien fonctionner:

Function ExactWordInString(Text As String, Word As String) As Boolean
    ExactWordInString = " " & UCase(Text) & " " Like "*[!A-Z]" & UCase(Word) & "[!A-Z]*"
End Function

Source: Page de la feuille de calcul Astuces Excel: un mot particulier est-il contenu dans une chaîne de texte?

Pour l'utiliser:

  1. Appuyez sur Alt+ F11pour ouvrir l'éditeur VBA
  2. Dans la fenêtre Projet, cliquez avec le bouton droit de la souris et sélectionnez Insérer → Module.
  3. Collez le code ci-dessus
  4. De retour dans le classeur, mettez vos cellules en surbrillance et accédez à Mise en forme conditionnelle → Nouvelle règle ...
  5. Sélectionnez "Utiliser une formule pour déterminer les cellules à formater"
  6. Entrez la formule suivante: =ExactWordInString(A1, "tea")
  7. Cliquez sur "Format ..." et sélectionnez vos options de formatage, puis cliquez deux fois sur OK.

Cela devrait faire l'affaire.

Indrek
la source
Merci d'avoir répondu. J'ai déjà essayé cette option auparavant, et je viens d'essayer encore, mais elle met toujours en évidence les cellules avec "à la place"
Darren Haynes
@Darren Voir l'article mis à jour avec des captures d'écran. Êtes-vous sûr d'avoir essayé cette option exacte? Je ne peux pas imaginer que cela fonctionnerait différemment dans Excel 2010.
Indrek
Salut, oui j'ai essayé ça mais ça n'a pas marché. Voici une distribution d'écran montrant les 3 options que j'ai essayées. screencast-o-matic.com/watch/cl66lO93h
Darren Haynes
@ Darren Cela peut être long, mais avez-vous effacé le formatage dès la première tentative? Lors de la troisième tentative, j'ai remarqué que vous sembliez définir une couleur d'arrière-plan beaucoup plus sombre que les lignes que vous avez ensuite désignées, ce qui peut signifier que la règle de mise en forme "Texte qui contient" est toujours active.
Indrek
Salut, après chaque tentative de compression, j’appuie sur "ctrl + z" pour annuler l’action, mais bien sûr, tu ne peux pas le voir à l’écran. Cela efface la mise en évidence dans les cellules avant d’essayer l’option de formatage suivante. Cela signifie-t-il que la règle a également été supprimée?
Darren Haynes
3

Dans Format only cells that contain, vous pouvez utiliser Cell valueet choisir equal to, et insérer "thé" dans le dernier champ.

m4573r
la source
Merci d'avoir répondu. J'ai déjà essayé cette option, mais je réessaye encore, mais elle met toujours en surbrillance les cellules contenant "à la place"
Darren Haynes
Bizarre, ça marche ici ... Alors je ne sais pas!
m4573r
Travaillé pour moi (Excel 2010).
Rory Solley
0

Avez-vous des signes de ponctuation dans les cellules? Sinon, cette solution basée sur une formule devrait fonctionner pour vous:

En supposant que les données soient entrées column A, sélectionnez cette colonne et appliquez une mise en forme conditionnelle à l’aide de l’option "Utilisez une formule pour déterminer les cellules à formater", avec cette formule.

=SEARCH(" tea "," "&A1&" ")

SEARCH n'est pas sensible à la casse. La formule recherche "thé" avec un espace de chaque côté, dans le contenu du texte avec un espace de chaque côté, de manière à capturer le thé au début ou le thé à la fin mais pas en équipe ou à la place.

La ponctuation peut gâcher ceci car elle ne trouvera pas de thé (avec une virgule juste après) par exemple. Pour répondre à cela, vous pouvez ajouter des fonctions SUBSTITUTE à la formule pour les supprimer, par exemple, si vous avez des virgules et des points (utiliser des points), utilisez cette version.

=SEARCH(" tea "," "&SUBSTITUTE(SUBSTITUTE(A1,",",""),".","")&" ")

Barry Houdini
la source
0

sous mise en forme conditionnelle, utilisez l'option "Utilisez une formule pour sélectionner les cellules à formater".

entrer:

= AND (PAS (ISBLANK (A *)), A * = "thé") (où A * est la 1ère cellule de la plage que vous souhaitez formater)

ajoutez une deuxième règle pour la même plage et entrez la formule:

= NOT (ET (ISBLANK (A *))

Assurez-vous que la 1ère règle (en sélectionnant "thé" est la 1ère (en haut)

Ainsi, toute cellule dont le format ne correspond pas à la deuxième règle sera formatée. Toute cellule contenant uniquement "thé" sera formatée conformément à la première règle.

Aaron
la source