如何在excel中查找每一行的最小值和对应的列?

时间:2018-11-07 09:01:41

标签: excel

我有一个包含以下数据的Excel工作表

Name Time1 Number1 Time2 Number2 Time3 Number3 Time4 Number4 Time5 Number5

ABC   0.1    4      0.2    3     0.3    2       0.4    5      0.5   6
DEF   1.1    1      1.2    5     0.8    6       0.6    9      0.9   7
GHI   1.2    4      3.2    3     0.3    9       0.1    2      1.6   10

我想为每个名称找到最小的 Time1 Time5 ,以及相应的 Number 。对于 time1 ,对应的数字是 number1 ,对于 name2 ,是 number2 ,依此类推。对于每一行,还应该选择哪个时间。例如对于上面的数据输出应该是这样的。

Name Time Number
ABC   0.1  4    Time1
DEF   0.6  9    Time4
GHI   0.1  2    Time4

这是示例 enter image description here 我将在L中应用公式的最短时间,在M中应用相应的数字,在N中应用哪个时间。

2 个答案:

答案 0 :(得分:1)

您可以使用这些公式

enter image description here

Cell M2: =A2
Cell N2: =MIN(B2,D2,F2,H2,J2)
Cell O2: =INDEX(B2:K2,0,MATCH(N2,IF(LEFT($B$1:$K$1,4)="Time",B2:K2),0)+1)
Cell P2: =INDEX($B$1:$K$1,0,MATCH(N2,IF(LEFT($B$1:$K$1,4)="Time",B2:K2),0))

O2和P2单元格中的公式是一个数组公式,必须按Ctrl + Shift + Enter才能使用它。

答案 1 :(得分:0)

假设您的数据从单元格A1开始。 使用“;”作为分隔符(可能必须更改为“,”,具体取决于您的设置)

假设结果位于(A8:D8)范围内,而A8则将用作公式基础的名称(在此示例中为“ ABC”):

ABC时间的公式(在B8单元格中):

=MIN(B2;D2;F2;H2;J2)

对应的ABC编号的公式(在C8单元格中):

=INDIRECT(ADDRESS(MATCH(A8;A$2:A$4;0)+1;MATCH(B8;A2:K2;0)+1;4))

ABC注释的公式(返回Time1)(在D8单元格中):

=INDIRECT(ADDRESS(MATCH(A8;A$2:A$4;0);MATCH(B8;A2:K2;0);4))

拖动其他名称