Как сэкономить время с несколькими возможностями COUNTIFS?

326
user902300

Я уверен, что есть более разумный подход, чем этот грубый:

=IF(COUNTIFS(O40<>P40;O40<>Q40;O40<>R40;O40<>S40;O40<>T40;O40<>U40; p40<>o40;p40<>Q40;p40<>R40;p40<>S40;p40<>T40;p40<>U40; q40<>P40;q40<>o40;q40<>R40;q40<>S40;q40<>T40;q40<>U40; r40<>P40;r40<>Q40;r40<>o40;r40<>S40;r40<>T40;r40<>U40; s40<>P40;s40<>Q40;s40<>R40;s40<>o40;s40<>T40;s40<>U40; t40<>P40;t40<>Q40;t40<>R40;t40<>S40;t40<>o40;t40<>U40; u40<>P40;u40<>Q40;u40<>R40;u40<>S40;u40<>T40;u40<>o40);1;2) 

Я пробовал что-то вроде этого, но это не работает, как указано выше:

=IF(COUNTIF(<>;<>);1;2) 

кто-то может кратко научить меня? Спасибо

РЕДАКТИРОВАТЬ:

Пояснение: в строке 40 у меня 7 ячеек с несколькими смешанными значениями (числа, потомки). то, что я пытаюсь сделать, это проверить каждую ячейку из этих 7 с каждой ячейкой из этих 7. поэтому, если между ними нет совпадения, то отображается значение 1, а если есть совпадение, то отображается значение 2. встраивание изображения в цвета:

enter image description here

1
Вы, кажется, неправильно используете COUNTIFS. Первый аргумент обычно является диапазоном (возможно, O40: U40?), А список условий начинается со второго. Также было бы полезно, если бы вы написали о проблеме, которую хотите решить, мне трудно представить, что может представлять собой такой сложный расчет COUNTIFS. Возможно, есть другой способ решить вашу бизнес-проблему. ttarchala 5 лет назад 0
@ttarchala Я сделал правку ... да, у меня есть ощущение, что я неправильно использую COUNTIF, но эта первая формула (длинная) до сих пор работает безупречно в моих тестах user902300 5 лет назад 0
Формула может дать вам правильные результаты чисто случайно. Обычно 1-й, 3-й, 5-й и т. Д. Каждый нечетный аргумент для COUNTIF должен быть диапазоном, поэтому я предполагаю, что функция незаметно преобразует результаты сравнения в специальные диапазоны. Было бы полезно, если бы вы не просто опубликовали формулу, но и протестировали данные, которые вы сравниваете, и даже объяснили «деловой» смысл этих данных. ttarchala 5 лет назад 0
@ttarchala, так что я должен удвоить это? как: ** = IF (COUNTIF (O40 <> P40; O40 <> P40; O40 <> Q40; O40 <> Q40 ...... **? хорошо, как я объяснил в посте: все, что я хочу, это сравните эти 7 ячеек друг с другом и выясните, нет ли «дубликатов» user902300 5 лет назад 0
Для поиска дубликатов было бы гораздо полезнее применить функцию UNIQUE. Попробуйте вычислить = COUNT (UNIQUE (O40: U40)) и посмотрите, что он дает для различных тестовых данных. ttarchala 5 лет назад 0
Хорошо, теперь я вижу, что вы хотите сделать. COUNT не работает, потому что это для чисел. Ответ приходит ... ttarchala 5 лет назад 0

1 ответ на вопрос

1
ttarchala

Чтобы увидеть, есть ли у вас дубликаты в вашем диапазоне, используйте это выражение:

=IF(ROWS(UNIQUE(TRANSPOSE(A1:G1))) = COLUMNS(A1:G1); "UNIQUE"; "DUPLICATE") 

Это будет работать с диапазоном любой длины. Для вертикальных диапазонов, отбросьте TRANSPOSE и используйте ROWS вместо COLUMNS для сравнения.

это решение никогда не пришло бы мне в голову. благодарю вас. user902300 5 лет назад 0

Похожие вопросы