Microsoft Excel - условное форматирование для сопоставления ячейки в столбце с ячейкой в ​​одной строке другого столбца - PullRequest
0 голосов
/ 06 июня 2018

У меня есть книга, созданная в Excel 2013, которую каждый инженер на моей работе должен использовать для проверки данных, введенных в систему.Мы можем экспортировать файлы в XLS, и я создал макрос для извлечения всех данных и условного форматирования для отображения «ошибок», которые необходимо исправить.

Мы находимся в процессе создания версий рабочей книги,и для этого я пытаюсь получить более сложные формулы для проверки данных.Есть несколько столбцов, которые должны быть перепроверены в одной проверке, потому что они должны совпадать.Это означает, что мне нужно правило форматирования, чтобы искать в любой данной ячейке в столбце и проверять другие ячейки в ОДНОЙ СТРОКЕ, кроме РАЗЛИЧНОЙ КОЛОННЫ, и убедиться, что они совпадают.

Например: Столбец А является меткойИдентификатор текста, и в этом случае он говорит, что 1 - 1,5 "HDPE. Столбец B - это количество воздуховодов, которое равно 1 Столбец C - это размер воздуховода, который равен 1,5", а столбец D - это тип воздуховода, который является HDPE.

I Текст идентификатора метки, чтобы взять 3 отдельные части строки и сопоставить ее с другими столбцами.Если этого не произойдет, будет выделен столбец BD, который не соответствует.Я вручную создал пример того, что мне нужно сделать.

Пример:

Example:

Ответы [ 2 ]

0 голосов
/ 08 июня 2018

Удалите все существующие CF из ColumnsB: D, выберите их и HOME> Стили - Условное форматирование, Новое правило ..., Используйте формулу, чтобы определить, какие ячейки форматировать и Значения форматагде эта формула верна: :

=NOT(OR(B1=--LEFT($A1,FIND("-",$A1)-2),B1=MID($A1,FIND("-",$A1)+2,FIND("-",$A1)+1),B1=MID($A1,FIND("""",$A1)+2,LEN($A1))))  

Формат ... , выберите выбор форматирования, ОК , ОК ,

0 голосов
/ 06 июня 2018

Так что это включает в себя работу со строками, в частности, с функциями LEFT, RIGHT, MID, а также помнить о том, как вы сравниваете предметы.

Все это требует тщательности в том, каквы отделяете значения от строки в первом столбце.Чтобы проверить все свои функции, начните использовать пустые ячейки для медленного построения формул, чтобы собрать общую логику.

При подсчете количества воздуховодов вы можете увидеть, что вам нужно «число слева оттире персонаж ".Итак, вы начнете так ...

=FIND("-",A2)

Вы хотите, чтобы символы располагались только слева от тире, поэтому используйте функцию LEFT

=LEFT(A2,FIND("-",A2))

, которая возвращаетзначение 1 -, но вы не хотите включать тире, поэтому вычтите один.

=LEFT(A2,FIND("-",A2)-1)

Теперь, если вы сравните это значение с количеством воздуховодов в столбце B, вы получите

=LEFT(A2,FIND("-",A2))=B2

Что дает значение FALSE.Это связано с тем, что результатом построенной вами функции LEFT является строка «1», а не число.Поэтому используйте другую функцию для преобразования ее в число

=NUMBERVALUE(LEFT(A2,FIND("-",A2)-1))=B2

. Теперь вы получите правильный результат TRUE.

. Выделите ячейки B2: B5 и выберите Условное форматирование -> Создать.Правило.Затем выберите «Использовать формулу, чтобы определить, какие ячейки форматировать».Затем введите формулу (целое = NUMBERVALUE) и выберите свой формат.И вы закончили с этим столбцом.

Продолжите работать над тем, как разделить значения для других столбцов.Если у вас есть дополнительные вопросы, мы можем помочь.

...