Excel中提取两列中取不重复值之数组公式法图解

如题所述

Excel提取两列中不重复(唯一)值之数组公式法

将用到INDEX、SMALL、IF、ROW、MATCH这几个函数

工具/原料

excel 电脑

方法/步骤

我将通过数组公式在d1单元格输入数组公式然后向右、向下复制,返回a、b列中不重复的记录

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代表该位置的值不是首次出现

将上一步骤的等式剪切再剪切板中,然后输入if函数,第二个参数是row函数,第三个参数是一个很大的数字

然后将剪切板的内容复制到if的第一个参数的位置,如图所示

最后if函数的返回值将是24个数字组成的数组函数,除了9999999,其他的元素值代该位置的值是首次出现在a1:a24中,该值同时也是行号

将上一步输入的if函数剪切一下,然后输入small函数,small函数第二个参数是row函数,然后将鼠标定位到small第一个参数位置粘贴一下

small函数返回的是在if函数返回值序列中第一小的元素,整体公式向下复制还会返回第二小的元素等等

将上一步的small函数剪切一下,然后输入index函数,第一个参数是相对引用的a1到a24,第三个参数是1,第二个参数复制一下剪切的small函数

函数输入完成之后按ctrl+shift+回车,然后拖动填充柄向右复制一个单元格然后松开鼠标选中d1到e1单元格向下拖动填充柄直到

现在公式区域显示的就是a1到b24区域中不重复的记录

注意事项

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的第二个参数也为数组,返回对应位置的行号,对应的位置是逻辑值真

温馨提示:答案为网友推荐,仅供参考