我想数一下我的产品售出的次数。我试过COUNTIF,但它显然没有考虑到相关的数量。在列E i中有产品的数量,在FILE列中屏幕1中有产品的名称,我们看到:5 DRA 7文件2 MUS 1 He
但COUNTIF会发现:5 DRA 4文件,而不是7等。
是否有一个同时考虑E、G和J列数量的函数?
链接:https://docs.google.com/spreadsheets/d/1_hXWlkJxzP-7QbUW6G4Ymk4Zzg2TxfzDWNEp1MGYl2Y/edit?usp=sharing
非常感谢你的帮助:)

发布于 2021-12-07 03:52:53
从'LISTE‘!h:h中删除所有内容(包括标题)。然后将以下公式放在'LISTE‘!H1中:
=ArrayFormula({"Vendu"; IF(A2:A="";;IFERROR(VLOOKUP(A2:A;QUERY({FLATTEN(FILTER(PROPER(COMMANDES!E2:L);REGEXMATCH(COMMANDES!E1:L1;"Pdt")))\FLATTEN(FILTER(COMMANDES!E2:L;REGEXMATCH(COMMANDES!E1:L1;"Qt")))};"Select Col1, SUM(Col2) WHERE Col2 Is Not Null GROUP BY Col1");2;FALSE)))})
这个公式将产生标题和所有列的结果。
首先,我应该注意到,产品名称的呈现方式有不同的地方(例如,“不含烟雾的巨大的V1”和“没有烟雾的巨大的V1”,注意到“没有”这个词大写的不同),这会影响REGEX类型的命令认为是匹配的。因此,这里的公式需要一个PROPER( )包装来规范这些差异。
您将看到FILTER(FLATTEN(____,REGEXMATCH()))两次。在每种情况下,FILTER只过滤列结果,其中列标题上的REGEXMATCH匹配特定的值(第一次为“Pdt”,第二次为"Qt“)。然后,FLATTEN在每个数组中形成一列,以左侧列中的产品和右侧列中的原始数量(都在内存中且未见)结束。
然后,QUERY消除了上述数组中没有计数的任何行,然后返回每个产品的所有产品和计数的SUMs。
然后VLOOKUP在这个实际持有的QUERY中查找A2:A中的每个非空值,并返回对应产品的列-2结果(即SUM)。
外部IF包装使结果为空,其中A2:A也是空/空。
https://webapps.stackexchange.com/questions/160581
复制相似问题