Excel 从索引函数返回数组?

Excel 从索引函数返回数组?,excel,excel-formula,Excel,Excel Formula,我必须在Excel表格中做一个计算字段,汇总表中的值和域表中的值。例如,拥有带有名称和数量的商品表,以及带有商品名称和价格的域表价目表。目标是查找每个商品行的价格,将其乘以价格,并将其相加。有些商品行可能重复,有些商品行可能遗漏,因此不可能进行向量积 事实上,实际情况要复杂一些 我可以用匹配和索引函数以及数组公式做很多事情。但我要说明的是,索引函数不能基于传入的索引数组返回找到的值数组。这个公式总是以值1结束,而不是我所期望的数组: {=COUNT(INDEX({1,2,3},{3,2,1}))

我必须在Excel表格中做一个计算字段,汇总表中的值和域表中的值。例如,拥有带有名称和数量的商品表,以及带有商品名称和价格的域表价目表。目标是查找每个商品行的价格,将其乘以价格,并将其相加。有些商品行可能重复,有些商品行可能遗漏,因此不可能进行向量积

事实上,实际情况要复杂一些

我可以用匹配和索引函数以及数组公式做很多事情。但我要说明的是,索引函数不能基于传入的索引数组返回找到的值数组。这个公式总是以值1结束,而不是我所期望的数组:

{=COUNT(INDEX({1,2,3},{3,2,1}))}
请注意,我不能使用查找函数,因为它们需要排序列表…

索引(如VLOOKUP)不会返回值数组(除非在某些复杂的情况下)

如果第一个表中有Name1和Count,第二个表中有Name2和Price,则可以使用此公式得到总价格

=SUMPRODUCT(计数、SUMIF(名称2、名称1、价格))

[SUMIF部分正在做我认为您正在尝试使用索引所做的事情]


假设第二个表中的Name2没有重复

使用VLOOKUPs会有帮助吗?当您将可选的第4个参数设置为FALSE或0时,它可以处理未排序的列表?不,它不能这样做。很好,就是这样。一直以来,我都在尝试“矢量化”输入,而不是条件!