Korzystanie z formatowania warunkowego dla tekstu o dopasowaniu ścisłym

3

Próbuję użyć formatowania warunkowego, aby podświetlić komórki w kolumnie zawierającej dokładne słowo w programie Excel 2012. Odniosłem tylko częściowy sukces, używając funkcji „komórki zawierające tekst”. Problem polega na tym, że chcę wyróżnić tylko te komórki, które zawierają dokładne słowo „herbata”. Jednak komórki zawierające słowo „zamiast” są również podświetlone, ponieważ słowo „herbata” znajduje się wewnątrz „zamiast”, czego nie chcę. Chcę tylko wyróżnić komórki, które zawierają „herbatę”. Czy to możliwe.

Inną rzeczą jest to, że nie chcę żadnych odchyleń od wielkich liter. Chcę, aby wyróżniono przypadki „herbaty”, „Herbaty” i „Herbaty”.

Darren Haynes
źródło

Odpowiedzi:

2

Aby znaleźć dokładne słowo w komórce, będziesz musiał użyć funkcji VBA, wydaje się, że nie ma sposobu, aby to zrobić za pomocą samych funkcji Excela.

W szczególności wydaje się, że następująca funkcja działa dobrze:

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

Źródło: Arkusz kalkulacyjny Strona Porady Excel: Czy w łańcuchu tekstowym znajduje się określone słowo?

Aby go użyć:

  1. Naciśnij Alt+, F11aby otworzyć edytor VBA
  2. W oknie projektu kliknij prawym przyciskiem myszy i wybierz Wstaw → Moduł
  3. Wklej powyższy kod
  4. Wróć do skoroszytu, zaznacz komórki i przejdź do Formatowanie warunkowe → Nowa reguła ...
  5. Wybierz „Użyj formuły, aby określić, które komórki sformatować”
  6. Wprowadź następującą formułę: =ExactWordInString(A1, "tea")
  7. Kliknij „Formatuj ...” i wybierz opcje formatowania, a następnie dwukrotnie kliknij OK

To powinno wystarczyć.

Indrek
źródło
Dzięki za odpowiedź. Wypróbowałem tę opcję również wcześniej i po prostu spróbowałem jeszcze raz, ale nadal wyróżnia komórki z „zamiast” w nich
Darren Haynes
@Darren Zobacz zaktualizowany post ze zrzutami ekranu. Czy na pewno wypróbowałeś dokładnie tę opcję? Nie wyobrażam sobie, aby działało inaczej w programie Excel 2010.
Indrek,
Cześć, tak, próbowałem tego, ale nie działało. Oto rzut ekranu pokazujący 3 opcje, które wypróbowałem. screencast-o-matic.com/watch/cl66lO93h
Darren Haynes,
@Darren To może być długa szansa, ale czy rzeczywiście wyczyściłeś formatowanie od pierwszej próby? Zauważyłem, że przy trzeciej próbie wydawało się, że ustawiłeś znacznie ciemniejszy kolor tła niż wiersze, które wtedy wskazałeś, co może oznaczać, że reguła formatowania „Tekst zawierający” jest nadal aktywna.
Indrek,
Hej tam - po każdej próbie usypiania naciskałem „ctrl + z”, aby cofnąć akcję, ale oczywiście nie widać tego na ekranie. To wyczyści zaznaczenie w komórkach, zanim spróbuję następnej opcji formatowania. Czy to oznacza, że ​​reguła również została usunięta?
Darren Haynes,
3

W Format only cells that containmożesz użyć, Cell valuewybrać equal toi wstawić „herbatę” w ostatnim polu.

m4573r
źródło
Dzięki za odpowiedź. Próbowałem już wcześniej i próbowałem ponownie, ale nadal wyróżnia komórki z „zamiast” w nich
Darren Haynes,
Dziwne, tutaj działa ... Więc nie wiem!
m4573r,
Pracował dla mnie (Excel 2010).
Rory Solley,
0

Czy masz jakieś znaki interpunkcyjne w komórkach? Jeśli nie, to rozwiązanie oparte na formule powinno działać dla Ciebie:

Zakładając dane w column A, wybierz tę kolumnę i zastosuj formatowanie warunkowe za pomocą opcji „Użyj formuły, aby określić, które komórki sformatować” za pomocą tej formuły

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

Funkcja SEARCH nie rozróżnia wielkości liter. Formuła wyszukuje „herbatę” ze spacją po obu stronach, w treści tekstu ze spacją po każdej stronie, więc przechwyci Herbatę na początku lub herbatę na końcu, ale nie Drużynę lub zamiast niej

Interpunkcja może to zepsuć, ponieważ na przykład nie znajdzie herbaty (z następującym bezpośrednio po nim przecinkiem). Aby to zrobić, możesz dodać do formuły funkcje SUBSTITUTE, aby je usunąć, np. Jeśli możesz mieć przecinki i kropki (kropki), użyj tej wersji

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

Barry Houdini
źródło
0

w przypadku formatowania warunkowego użyj opcji „Użyj formuły, aby wybrać komórki do sformatowania”.

wchodzić:

= ORAZ (NIE (ISBLANK (A *)), A * = „herbata”) (gdzie A * to pierwsza komórka w zakresie, który chcesz sformatować)

dodaj drugą regułę dla tego samego zakresu i wprowadź formułę:

= NIE (I (ISBLANK (A *))

Upewnij się, że pierwsza reguła (wybór dla „herbaty” jest 1. (na górze)

Spowoduje to, że każda komórka, która nie będzie pusta, zgodnie z drugą regułą, a następnie każda komórka zawierająca tylko „herbatę” sformatuje zgodnie z pierwszą regułą.

Aaron
źródło