所以我有一列 A 看起來像這樣:
I
15
0
3
15
M
8
0
8
21
Q
0
5
0
0
我可以找到最大值=最大值(A1:A100) 我可以找到最小值=小(A1:A100,1)
我如何找到最大的之前的一個以及最大的之前的一個。我可以使用 Large 來呼叫第 N 個值,但是我如何知道函數計數了多少個 N 值,以便我可以知道它使用的位置指的是最後 3 個(最大的和之前的 2 個)?
忽略重複項- 在範例中最大的是21,前面的一個是15,再前面的是8。 。我正在尋找 8 作為第三大值。
下面你會發現網路上有幫助的人提供了一個資料透視表,一個陣列公式解決方案,我終於能夠做一個簡單的公式一。
如果你堅持我們擁有一切,你可以為這項工作提供 vba,否則已經足夠了。
答案1
答案2
答案3
有了我得到的所有很酷的幫助,它讓我思考我是否可以做資料透視表所做的事情,我想出了這個:(即使是我自己的哈哈)
=IF(COUNTIF($A$1:A1,A1)<=1,A1,"")
對感興趣的資料製作一個平行列可以解決這個問題。 (例如貼上C1並向下複製)
它提供了初始的重複資料刪除列表,您可以根據大小進行判斷。作為一個簡單的解決方案,它不應該幹擾文件中可能存在的任何不穩定內容。我個人可以沒有 vba。如果存在混合資料類型,任何意外的轉變都應該可以用 IFERROR 來控制。
答案4
@helena4 試試這個陣列公式
=LARGE(IF(A1:A15 < LARGE(A1:A15,1),A1:A15),3)
然後按Ctrl+Shift+Enter
它會忽略重複項。