如何用公式按优先级从A/B/C列取数填充D列的27000条记录
实现方法
通用兼容方案(支持所有版本Excel、WPS表格)
直接在D列首行(比如D2单元格)输入如下公式,下拉填充到所有行即可,27000条数据计算无压力:=IF(A2<>"",A2,IF(B2<>"",B2,C2))
逻辑说明:先判断A列单元格是否非空,非空就返回A列值;为空的话再判断B列是否非空,非空返回B列值;A、B都为空就默认返回C列值。
简洁方案(支持Excel 2021/365、新版WPS表格)
可以用专门返回首个非空值的COALESCE函数,公式更短不易出错:=COALESCE(A2,B2,C2)
函数会按照参数输入的顺序,自动返回第一个非空的单元格值,完全匹配你的需求。
补充说明
如果存在单元格看似为空、实际内含空格的情况,可以搭配TRIM函数过滤空格干扰,示例:=COALESCE(TRIM(A2),TRIM(B2),TRIM(C2))
内容的提问来源于stack exchange,提问作者NotVeryBright
相关产品推荐
相关产品推荐

