Условное форматирование при вхождении части текста в ячейку

Автор koskos, 25 января 2012, 09:13

0 Пользователи и 1 гость просматривают эту тему.

koskos

Здравствуйте, прошу помочь.
Надо выделить цветом текстовую ячейку, если она в себе содержит среди прочего определенную часть текста.
Например:
А1 Олег (Кострома), 1960 г.р.
А2 Иван (Ярославль), 1958 г.р.
А3 Сергей (Ярославль), 1973 г.р.

Надо выделить только ячейки, содержащие "Ярославль".
В условном форматировании нет условия "Содержит", а текстовая формула FIND ищет только текст в тексте, а не в ячейке.
Помогите, пожалуйста, советом.

JohnSUN

Цитата: koskos от 25 января 2012, 09:13текстовая формула FIND ищет только текст в тексте, а не в ячейке.
Не совсем так. Если в функцию, работающую с текстовыми параметрами, передать адрес ячейки, то Calc подставит строку из указанной ячейки и функция сработает так, будто в параметре указана именно строка. Если в ячейке не текстовое значение, а число, то будет использовано его текстовое представление.
Небольшая путаница возможна с датами. Например, если в ячейке A1 дата "25.01.2012", то =FIND("12";A1) выдаст ошибку #ЗНАЧЕН! - строка "12" не найдена. Хотя глазами мы эти "12" в ячейке видим. А вот =FIND("9";A1) или =FIND(9;A1) выдаст 3. Это потому, что дата "25.01.2012" на самом деле является числом 40933 и Calc ищет в строке "40933".

Теперь по твоему вопросу. Я в таких случаях использую трюк, который виден на картинке: просто проверяю результат функции на наличие ошибки. Если ошибки нет, значит FIND() нашел вхождение нужной строки.
Другой вариант того же фокуса - формула N(FIND($F$1;A1))>0
($F$1 - адрес ячейки, в которой записано искомое слово, в данном случае "Ярославль")


[вложение удалено Администратором]
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

koskos

Цитата: JohnSUN от 25 января 2012, 10:23Если в функцию, работающую с текстовыми параметрами, передать адрес ячейки, то Calc подставит строку из указанной ячейки и функция сработает так, будто в параметре указана именно строка.
Огромное спасибо. Весьма исчерпывающе. Вопрос решен :).

Hasim

Уважаемые, как можно условно форматировать только ячейки A17:A22.
Как написал JohnSUN я могу только для всего столбца.
Для A17:A22 не получается.

JohnSUN

#4
Привет и добро пожаловать на форум!
Если честно, не до конца понял вопрос... Точнее, не понял фразу насчет "я могу только для всего столбца"...
Выделяешь диапазон A17:A22 начиная с верхней (левой) ячейки A17. Выделенный диапазон подсвечивается цветом, а "активная ячейка" еще и обведена рамкой. Если бы начали выделять диапазон снизу вверх, то активной была бы ячейка A22.
Теперь, когда выберем Форма-Условное форматирование, формула будет явно относиться именно к активной ячейке и косвенно - к остальным из выделенного диапазона.
То есть, если в формуле используется адрес ячейки A17, то Calc применив эту же формулу к A22 заменит адрес ячейки на A22. Ну, как это обычно происходит с относительными ссылками, когда мы растягиваем формулу по нескольким ячейкам.
В то же время абсолютная ссылка (с "долларами") останется без изменений.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

Hasim

Кажется понял.
Если начинам выделять с А17 до А22 то активная ячейка А22 и формула
NOT(ISERROR(FIND("Ярославль";A22)))
а если начинам выделять с А22 до А17 то активная ячейка А17 и формула
NOT(ISERROR(FIND("Ярославль";A17)))
Правильно я понял?

JohnSUN

Это в ООо так? У меня в LiO как раз наоборот - активной - обведенной черной рамкой - остается ячейка с которой начали выделять...
Может быть, мультик в конце этой статьи немного поможет разобраться с форматированием.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

Hasim

OpenOffice.org 3.3.0 pro, Инфра-Ресурс.
активная ячейка - обведенная черной рамкой - на которой кончили выделять

JohnSUN

Ага, точно! Тогда да, все верно.
Ну, в общем, главное при вводе формулы условия для форматирования - видеть к какой ячейке она будет применяться и указывать адреса ячеек с поправкой на неё.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне