У меня есть таблица с базой продуктов, например:
product_name; element_name; element_quantity
product_1; element_1; 5
product_1; element_2; 10
product_2; element_1; 2
product_2; element_3; 1
И список продуктов, например:
product_name; product_quantity
product_1; 5
product_2; 10
product_1; 1
Какие формулы я должен использовать, чтобы получить элементы, и их количество используется сделать продукты в списке? У меня есть база данных продуктов, и после того, как я заполню список, я хочу составить список элементов, которые мне нужно купить Если это возможно, я не хочу использовать Google Query, потому что он медленный.
Я хочу создать список вроде:
element_name; element_quantity
element_1; 50
element_2; 60
element_3; 10
Моя оригинальная база содержит около 200 продуктов и 50 различных элементов.
Это было моё первое решение, но оно медленное и код беспорядочный, но работает только это:
=IFERROR(QUERY(
{
IF('LIST'!E2 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D2 &"'";1); {""\""\""});
IF('LIST'!E3 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D3 &"'";1); {""\""\""});
IF('LIST'!E4 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D4 &"'";1); {""\""\""});
IF('LIST'!E5 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D5 &"'";1); {""\""\""});
IF('LIST'!E6 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D6 &"'";1); {""\""\""});
IF('LIST'!E7 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D7 &"'";1); {""\""\""});
IF('LIST'!E8 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D8 &"'";1); {""\""\""});
IF('LIST'!E9 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D9 &"'";1); {""\""\""});
IF('LIST'!E10 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D10 &"'";1); {""\""\""});
IF('LIST'!E11 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D11 &"'";1); {""\""\""});
IF('LIST'!E12 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D12 &"'";1); {""\""\""});
IF('LIST'!E13 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D13 &"'";1); {""\""\""});
IF('LIST'!E14 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D14 &"'";1); {""\""\""});
IF('LIST'!E15 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D15 &"'";1); {""\""\""});
IF('LIST'!E16 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D16 &"'";1); {""\""\""});
IF('LIST'!E17 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D17 &"'";1); {""\""\""});
IF('LIST'!E18 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D18 &"'";1); {""\""\""});
IF('LIST'!E19 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D19 &"'";1); {""\""\""});
IF('LIST'!E20 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D20 &"'";1); {""\""\""});
IF('LIST'!E21 = FALSE; QUERY(furniture_accessories_base;"select B,C,E where A='" & 'LIST'!D21 &"'";1); {""\""\""})
};
"select Col1, Col2, SUM(Col3) where Col3 > 0 group by Col1, Col2 ORDER BY SUM(Col3) DESC LABEL SUM(Col3) 'QUANTITY'"); {"-"\"-"\"-"})