Excel 2016数组公式问题:两列值相等时无法返回正确公共数字
Excel 2016提取A/B列公共数字公式修正方案
问题原因
原数组公式{=IFERROR(LEFT(A2,MATCH(FALSE,(MID($A2,ROW($L$1:$L$10),1)=MID($B2,ROW($L$1:$L$10),1)),0)-1),"")}在A、B单元格值完全相等时,MATCH(FALSE, ...)无法找到不匹配的字符,返回#N/A错误,被IFERROR捕获后返回空值,与预期返回相同值的逻辑不符。
修正后的数组公式
{=IF(EXACT(A2,B2),A2,IFERROR(LEFT(A2,MATCH(FALSE,(MID($A2,ROW($L$1:$L$10),1)=MID($B2,ROW($L$1:$L$10),1)),0)-1),"")}
注意:Excel 2016中输入该数组公式后,需按
Ctrl+Shift+Enter组合键完成确认。
公式说明
EXACT(A2,B2):精确对比A2与B2的内容(区分大小写),若完全匹配则直接返回A2;若无需区分大小写,可替换为A2=B2。- 当A、B内容不完全匹配时,执行原逻辑提取从左到右第一个不匹配字符之前的公共数字部分;若不存在公共部分则返回空值。
内容的提问来源于stack exchange,提问作者Rasec Malkic
相关产品推荐
相关产品推荐

