Excel中按A列数字位数规则填充C列的解决方案
Excel C列填充解决方案
公式法(兼容多数Excel版本)
根据A列是文本型数字还是数值型数字,选择对应公式:
情况1:A列为文本型数字(单元格左上角有绿色三角,或设置为文本格式)
在C2单元格输入以下公式,下拉/双击填充柄完成整列填充:
=IF(LEN(A2)=3,B2,LOOKUP(2,1/(LEN(A$1:A1)=3),B$1:B1))
- 逻辑:判断当前A列单元格长度为3时,直接取对应B列内容;否则向上查找最近一个长度为3的A列单元格,提取其B列内容。
情况2:A列为数值型数字(常规/数值格式)
在C2单元格输入以下公式,下拉/双击填充柄完成整列填充:
=IF(AND(A2>=100,A2<=999),B2,LOOKUP(2,1/(AND(A$1:A1>=100,A$1:A1<=999)),B$1:B1))
- 逻辑:判断当前A列单元格为3位整数时,直接取对应B列内容;否则向上查找最近一个3位整数的A列单元格,提取其B列内容。
进阶优化(Excel 365/2021适用)
使用更直观的XLOOKUP公式,无需数组按键:
=IF(LEN(A2)=3,B2,XLOOKUP(TRUE,LEN(A$1:A1)=3,B$1:B1,"",0,-1))
(数值型数字版本只需将LEN(A2)=3替换为AND(A2>=100,A2<=999))
关键说明
因同一组内3位数字对应的B列内容一致,无论找到组内哪个3位数字的对应B列,结果均符合要求。
内容的提问来源于stack exchange,提问作者lljc00
相关产品推荐
相关产品推荐

