excel:如果我在一个范围内搜索一个 MIN 值,并且有 2 个值是 MIN,它只显示第一个
excel: If I search for a MIN value in a range, and 2 values are MIN, it only displays the first
我有一个函数可以在一个范围内查找最小值,比方说 9、18、12、9。
两个 9 都是 MIN,但 MIN 只看 'first' 最小值。
我还希望能够将范围内的第二个“9”作为一个选项提供,以使其更清楚:这些值所在的列代表一个位置,而值本身代表去那里的难易程度,因此,如果 2 个位置的值为“9”,我想要一种方法不仅显示第一个“9”列作为结果,而且还显示第二个“9”列,因为此结果同样有效。使用此函数时如何处理第二个值,以便我的结果同时显示具有这些 MIN 值的第一列和第二列。有没有办法在另一个 MIN 搜索中排除已经找到的 MIN 值?或者我将如何解决这个第二个 'min' 值?
感谢您的宝贵时间。
您需要遍历找到的值。这段代码对我有用。注意循环中的 FindNext 操作。
Set rngFound = rngSearch.Find(SrchVal, LookIn:=xlValues)
If Not rngFound Is Nothing Then
FirstFind = rngFound.Address
Do
'Do something with the found value
Set rngFound = rngSearch.FindNext(rngFound)
Loop Until rngFound.Address = FirstFind
End If
假设我们在A
列中有数据,在C1中输入数组公式:
=IFERROR(SMALL(IF(($A:$A)=MIN(A:A),ROW($A:$A),""),ROW()),"")
然后抄下来。
数组公式必须用Ctrl + Shift + 输入Enter 而不仅仅是 Enter 键。
这将显示包含最小值的单元格的行号:
我有一个函数可以在一个范围内查找最小值,比方说 9、18、12、9。 两个 9 都是 MIN,但 MIN 只看 'first' 最小值。 我还希望能够将范围内的第二个“9”作为一个选项提供,以使其更清楚:这些值所在的列代表一个位置,而值本身代表去那里的难易程度,因此,如果 2 个位置的值为“9”,我想要一种方法不仅显示第一个“9”列作为结果,而且还显示第二个“9”列,因为此结果同样有效。使用此函数时如何处理第二个值,以便我的结果同时显示具有这些 MIN 值的第一列和第二列。有没有办法在另一个 MIN 搜索中排除已经找到的 MIN 值?或者我将如何解决这个第二个 'min' 值?
感谢您的宝贵时间。
您需要遍历找到的值。这段代码对我有用。注意循环中的 FindNext 操作。
Set rngFound = rngSearch.Find(SrchVal, LookIn:=xlValues)
If Not rngFound Is Nothing Then
FirstFind = rngFound.Address
Do
'Do something with the found value
Set rngFound = rngSearch.FindNext(rngFound)
Loop Until rngFound.Address = FirstFind
End If
假设我们在A
列中有数据,在C1中输入数组公式:
=IFERROR(SMALL(IF(($A:$A)=MIN(A:A),ROW($A:$A),""),ROW()),"")
然后抄下来。
数组公式必须用Ctrl + Shift + 输入Enter 而不仅仅是 Enter 键。
这将显示包含最小值的单元格的行号: