用零填充数字的嵌套 IF [重复]

Posted

技术标签:

【中文标题】用零填充数字的嵌套 IF [重复]【英文标题】:Nested IFs to pad numbers with zeroes [duplicate] 【发布时间】:2015-05-10 16:46:36 【问题描述】:

我希望用零填充列,以便以后可以连接它的值。它需要 4 个字符,所以我尝试使用嵌套 If 语句。

=IF(LEN(G2)=3,"0" & G2),IF(LEN(G2)=2,"00" & G2,G2)

我只得到“#Value”。我哪里错了?

【问题讨论】:

【参考方案1】:

不要重新发明***:已经有一个内置函数可以做到这一点。

=TEXT(G2,"0000")

现在,为了具体回答您的问题,您收到错误的原因是您的 IF 函数没有正确嵌套,因为右括号 ) 放错了位置。

曾经:

=IF(LEN(G2)=3,"0" & G2),IF(LEN(G2)=2,"00" & G2,G2)
                      ^

应该是:

=IF(LEN(G2)=3,"0" & G2,IF(LEN(G2)=2,"00" & G2,G2))
                                                 ^

不过,这不会给您预期的结果。只需使用内置的TEXT 函数即可。

【讨论】:

【参考方案2】:

不需要嵌套的IF。只需将 4 个“0”与您的文本连接起来,然后撕掉正确的 4 个数字。

=RIGHT(CONCATENATE(REPT("0",4), G2),4)

【讨论】:

以上是关于用零填充数字的嵌套 IF [重复]的主要内容,如果未能解决你的问题,请参考以下文章

用零填充整数(Java)[重复]

用零填充的 varchar(5) 字段中的第一个未使用的数字

用零填充个位数

Angular2 或 TypeScript 用零填充字符串

避免在javascript中嵌套if [重复]

在Javascript中将零填充到数字的左侧[重复]