Формула условного форматирования для значения MAX по отфильтрованной таблице в Google Sheets - PullRequest
1 голос
/ 19 февраля 2020

Мой друг увлечен Final Fantasy XIV и попросил меня создать для него электронную таблицу, которая поможет ему создать лучший набор снаряжения. Я не очень разбираюсь в документах Google, поэтому, пожалуйста, прости меня, если я что-то ошибаюсь.

https://drive.google.com/open?id=1loz2ARF42Dr_2sNqB4bGNkCbJ-TXnsD7o5LJ6RAmomQ

Цель: выбрать "голову" и "силу" "и ТОЛЬКО самое высокое значение силы из всех слотов 'head' будет выделено.

Формула, которую я использую, - это формат ячейки, если она больше или равна

=if(and(and($B$2<>"",$F$2<>""),MAX(B11,B29,B46,B63)),0)

(если поля 'head' и 'сила' заполнены, возвращают самое высокое значение списка, затем выделяют поле, если оно больше или равно этому значению), и это правило применяется к каждому из полей 'head'.

Я знаю, что эта формула работает, но у меня странная проблема. Я использовал условное форматирование, чтобы применить приведенную выше формулу к каждому блоку «сила головы», но когда вы обновляете другое значение, чтобы оно было выше, предыдущее самое высокое значение остается выделенным, даже если вы изменяете текущее самое высокое значение на меньшее, он остается выделенным.

пример: в настоящее время поле b63 является наибольшим из 4 значений, если вы измените любое из других значений на большое число (900), поле, которое вы изменили, станет подсвеченным, но поле 63 по-прежнему остается выделенным, даже если оно больше не является самым высоким значением, даже при изменении b63 на 0 поле остается выделенным.

Этот метод работает, если правило «условного форматирования» применяется к каждому блоку ИНДИВИДУАЛЬНО, но с> 200 коробками, это невероятно утомительно. Мне интересно, если я как-то ошибся в формуле?

В противном случае, если есть другое решение или способ сделать это, я открыт для предложений. Спасибо за ваше время.

1 Ответ

0 голосов
/ 19 февраля 2020

использование:

=(B11=MAX(FILTER(INDIRECT(ADDRESS(11,          
 MATCH(INDEX(FILTER($E$2:$E$7, $F$2:$F$7="x"), 1, 1), $A$10:$G$10, 0))&":"&
 ADDRESS(ROWS($A:$A), 
 MATCH(INDEX(FILTER($E$2:$E$7, $F$2:$F$7="x"), 1, 1), $A$10:$G$10, 0))), $A$11:$A=
 INDEX(FILTER({$A$2:$A$7;$C$2:$C$7}, {$B$2:$B$7;$D$2:$D$7}="x"), 1, 1))))*($A11=
 INDEX(FILTER({$A$2:$A$7;$C$2:$C$7}, {$B$2:$B$7;$D$2:$D$7}="x"), 1, 1))

0

демонстрация электронной таблицы

...