首页 > 解决方案 > Excel:如果数字小于8位,如何在以逗号分隔的数字字符串中添加前导零?

问题描述

我曾经=IF(A2=A1,C1&","&B2,B2)将跨多行的一串相关 SKU 连接到一个单元格中。问题是一些 SKU 以 0 开头,而这已被公式删除。(此外,有些行显示为错误单元格,带有红色文本并填充。错误消息说它们是一个以文本形式存储的数字。但并不是每个行都这样,我不知道为什么。 )

所有 SKU 都有 8 位数字,因此不正确的 SKU 将有 7 位数字。例如:

看起来像:4286000,4286800,4310001,4310801,14872001,14872801,14877001,14877801

应该是:04286000,04286800,04310001,04310801,14872001,14872801,14877001,14877801

我尝试了这个=TEXT功能,得到了一个有趣的(错误的)结果。例如,在一个所有六个 SKU 都需要前导零的字符串中,我在函数的 format_text 部分添加了 48 个零,每 8 个零后加逗号。它将逗号放在每三位数字中,基本上输出为一个大的单个数字。

这是可以用公式解决的问题,还是需要VBA?

标签: excelvbaexcel-formula

解决方案


如果它是视觉对象,您可以将单元格格式更改为自定义 00000000。


推荐阅读