IF函数识别单元格的第一个字符
IF function to identify first character of cell
我正在尝试在 Excel 中使用 IF 函数,这样如果单元格的第一个字符是 9
,那么显示的值应该是该单元格最右边的八个字符,否则显示的值应该是最右边的四个字符。但是这个公式不起作用:
=IF(LEFT(A2,1)=9,RIGHT(A2,8),RIGHT(A2,4))
即使单元格 A2 中的数字以 9
开头,它仍会返回最右边的四个数字。
你能指出我这里做错了什么吗?
尝试=IF(INT(LEFT(A2,1))=9,RIGHT(A2,8),RIGHT(A2,4))
LEFT
returns 文本,所以比较也需要针对字符串:
=IF(LEFT(A2,1)="9",RIGHT(A2,8),RIGHT(A2,4))
或者您需要将LEFT
的结果再次转换为数字:
=IF(NUMBERVALUE(LEFT(A2,1))=9,RIGHT(A2,8),RIGHT(A2,4))
如果条件用于设置字符数,则为较短的版本:
=RIGHT(A2,4+4*(LEFT(A2)="9"))
我正在尝试在 Excel 中使用 IF 函数,这样如果单元格的第一个字符是 9
,那么显示的值应该是该单元格最右边的八个字符,否则显示的值应该是最右边的四个字符。但是这个公式不起作用:
=IF(LEFT(A2,1)=9,RIGHT(A2,8),RIGHT(A2,4))
即使单元格 A2 中的数字以 9
开头,它仍会返回最右边的四个数字。
你能指出我这里做错了什么吗?
尝试=IF(INT(LEFT(A2,1))=9,RIGHT(A2,8),RIGHT(A2,4))
LEFT
returns 文本,所以比较也需要针对字符串:
=IF(LEFT(A2,1)="9",RIGHT(A2,8),RIGHT(A2,4))
或者您需要将LEFT
的结果再次转换为数字:
=IF(NUMBERVALUE(LEFT(A2,1))=9,RIGHT(A2,8),RIGHT(A2,4))
如果条件用于设置字符数,则为较短的版本:
=RIGHT(A2,4+4*(LEFT(A2)="9"))