如何在 Excel 中将工资金额转换为特定的 9 位数字格式

如何在 Excel 中将工资金额转换为特定的 9 位数字格式

如果我输入的工资金额为 34512.15,我希望公式以特定格式返回该金额,如下所示:

M(HT)(TT)(TH)HTOCC

M=百万 (HT)=十万 (TT)=万 (TH)=千位 H=百位 T=十位 O=个位 CC=美分

输入可能包含或不包含小数,但返回值不应包含小数。

此外,如果任何位值都没有提供值,则返回值中应填充零。因此,在上面的例子中,输出应为“003451215”(不带引号)。另一个例子:56000 薪水将返回为“005600000”。这可能吗?

答案1

结合SUBSTITUTETEXT函数。您可能需要"."根据区域设置更改。要转换A1公式中显示的值,请执行以下操作:

=SUBSTITUTE(TEXT(A1,"0000000.00"),".","")

请注意,它只会转换数值。任何文本或错误都只会原封不动地返回。

如果输入非常大的值,结果会更长。例如,它不会截断十亿位的数字。如果您想要这样做,请使用以下代码:

 =RIGHT(SUBSTITUTE(TEXT(A1,"0000000.00"),".",""),9)

答案2

如果你乘以 100 就会去掉小数点,那么你可以使用 TEXT 函数为你提供前导零,例如 A1 中的工资金额

=TEXT(A1*100,"000000000")

相关内容