2

У меня проблемы с определением GCD из набора данных. Я пытаюсь определить количество предметов в коробке любого данного предмета на складе, не глядя физически на каждый предмет на полках.

Вот примерный набор данных, который я создал из заказов на продажу.

0   Part1
36  Part1
12  Part1
18  Part1
6   Part1
0   Part1
6   Part1
36  Part1
36  Part1
20  Part2
5   Part2
15  Part2
20  Part2
25  Part2
0   Part2
30  Part2

Итак, глядя на это, я вижу, что Part1 поставляется в коробках по 6. Part2 поставляется в коробках по 5. Это возвращение, которое я ищу.

Я чувствую, что я рядом с

=GCD(SUMPRODUCT(--(A$1:A$16),(B$1:B$16=B1)),A1)

или же

=GCD(SUMPRODUCT(--(A$1:A$16)*(B$1:B$16=B1)),A1) 

но это не совсем работает.

По сути, я хочу что-то вроде SUMIF . Функция GCDIF где =GCDIF(range,criteria,[GCD range])

Это возможно?

2 ответа2

3

Вы можете использовать GCD, заключенный в IF в формуле массива, чтобы получить GCD для каждой части. Смотрите пример ниже.

Пример данных находится в ячейках A1:B15.

В C1 поместите следующую формулу и нажмите CTRL + SHIFT + ENTER на панели формул, чтобы создать формулу массива. Формула теперь должна быть заключена в фигурные скобки, чтобы указать, что это формула массива.

=GCD(IF($B$1:$B$15=B1,$A$1:$A$15,0))

Просто перетащите его вниз до намеченных строк.

0

Это решение имеет другой подход. Использование If с CHOOSE также может найти GCD диапазона данных.

Запишите эту формулу в ячейку F73 и заполните.

=IF(E73=$E$71,GCD(CHOOSE(1,D$73:D$78,D$79:D$81)),IF(E73=$F$71,GCD(CHOOSE(2,D$73:D$78,D$79:D$81)),GCD($D$82:$D$83)))

Обратите внимание, при необходимости измените ссылки на ячейки в формуле.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .