01
第 1 参数:要转换的多列数据区域;
第 2 参数「忽略设置」:常用3,代表忽略空单元格 + 错误值,避免空内容、#DIV/0! 这类值混入结果;
第 3 参数「扫描顺序」:默认TRUE按列扫描(先扫完 A 列、再 B 列、再 C 列),填FALSE按行扫描(先扫第一行所有列、再第二行)。
=UNIQUE(要去重的数组)02
=UNIQUE(TOCOL(A:C,3))
内层 TOCOL (A:C,3):先把 A-C 三列的所有内容,按列转换成一整列的数组,同时自动忽略空单元格、错误值,得到包含所有姓名的一维列表;
外层 UNIQUE (...):对这个一维列表去重,重复的姓名只保留第一个,最终输出不重复的完整名单,自动向下溢出填充。
03
=COUNTA(UNIQUE(TOCOL(A:C,3)))=UNIQUE(TOCOL(A:C,3,FALSE))=UNIQUE(TOCOL(VSTACK(A:C,E:G),3))=SORT(UNIQUE(TOCOL(A:C,3)))04
版本限制:TOCOL、UNIQUE 都是 Excel 365 专属动态数组函数,2021 及以下旧版本不支持,打开会报 #NAME? 错误;
忽略设置必加:第 2 参数填 3,能自动过滤空单元格和错误值,避免结果里出现空白、错误值;
扫描顺序别搞混:默认按列扫描,要按行扫描必须加第三参数 FALSE,否则顺序会出错;
溢出范围要留空:公式所在单元格的右侧、下方不要有其他数据,否则会出现溢出报错。

夜雨聆风