Excel提取兩列中不重複(唯一)值之陣列公式法?

Excel提取兩列中不重複(唯一)值之陣列公式法

將用到INDEX、SMALL、IF、ROW、MATCH這幾個函式

工具/原料

excel 電腦

方法/步驟

我將通過陣列公式在d1單元格輸入陣列公式然後向右、向下複製,返回a、b列中不重複的記錄

Excel提取兩列中不重複(唯一)值之陣列公式法

match返回一個由24個元素組成的陣列,元素的位置序號代表a1:a24中單元格從上到下位置順序,元素的值代表a1:a24中單元格值在a1:a24中首次出現的從上到下的位置順序數,元素數值相同代表出現不止一次,match的返回值將是這種形式的{1,2,3,1等等一共24個},

row的返回值是a1:a24中的行號組成的陣列結果是{1,2,3,4,5,6一直到24}

等式返回的是邏輯值組成的陣列{true,true,true,false等一共24個},true代表a1:a24中的值首次出現,false代表該位置的值不是首次出現

Excel提取兩列中不重複(唯一)值之陣列公式法

將上一步驟的等式剪下再剪下板中,然後輸入if函式,第二個引數是row函式,第三個引數是一個很大的數字

然後將剪下板的內容複製到if的第一個引數的位置,如圖所示

最後if函式的返回值將是24個數字組成的陣列函式,除了9999999,其他的元素值代該位置的值是首次出現在a1:a24中,該值同時也是行號

Excel提取兩列中不重複(唯一)值之陣列公式法

將上一步輸入的if函式剪下一下,然後輸入small函式,small函式第二個引數是row函式,然後將滑鼠定位到small第一個引數位置貼上一下

small函式返回的是在if函式返回值序列中第一小的元素,整體公式向下複製還會返回第二小的元素等等

Excel提取兩列中不重複(唯一)值之陣列公式法

將上一步的small函式剪下一下,然後輸入index函式,第一個引數是相對引用的a1到a24,第三個引數是1,第二個引數複製一下剪下的small函式

Excel提取兩列中不重複(唯一)值之陣列公式法

函式輸入完成之後按ctrl+shift+回車,然後拖動填充柄向右複製一個單元格然後鬆開滑鼠選中d1到e1單元格向下拖動填充柄直到

現在公式區域顯示的就是a1到b24區域中不重複的記錄

Excel提取兩列中不重複(唯一)值之陣列公式法

注意事項

MATCH($A$1:$A$24,$A$1:$A$24,0)=ROW($A$1:$A$24)要用絕對應用

MATCH($A$1:$A$24,$A$1:$A$24,0)=ROW($A$1:$A$24)意義是首次出現位置是否等於行號

IF(MATCH($A$1:$A$24,$A$1:$A$24,0)=ROW($A$1:$A$24),ROW($A$1:$A$24),9999999) if的第二個引數也為陣列,返回對應位置的行號,對應的位置是邏輯值真

函式, 公式, 陣列, excel,
相關問題答案