在行中查找匹配的值并返回列名?

在行中查找匹配的值并返回列名?

我有一个样本价格,我想在同一行中找出提供最低价或与样本价格相同的公司,并将其名称放在“公司名称”列中。我尝试使用 IF 进行比较,但结果在表格较大的情况下出现“参数过多”错误。有人能告诉我如何实现吗?

Price   Company A   Company B   Company C    Company Name
5       5           6           7           Company A
3       9           3           8           Company B

答案1

好的,我们开始吧。你的问题说的是“最低或等于”样品价格,但没有说如果价格高于样品价格该怎么办。所以我只选择最低的:

这将找到最低价格(我假设公司列是 BD):

=min(B2:d2)            (equals 5 for your first row)

查找最低价的列位置:

=match(min(b2:d2), b2:d2,0)      (equals 2 because that is the position of the lowest (5) in your first row)

这将返回第一行中具有最低值列的值:

=index(b$1:d$1 ,match(min(b2:d2), b2:d2,0)))     (returns "Company A" - the contents of that cell) 

所以最后一个公式就是你所需要的,前面的步骤只是为了解释我们如何到达那里。

相关内容