gpt4 book ai didi

excel - 如何在excel中每4位长度为1000的数字后添加逗号?

转载 作者:行者123 更新时间:2023-12-04 19:59:35 26 4
gpt4 key购买 nike

我想在每 4 位数字后添加逗号,例如 45700153920458799220 .我试过这个=LEFT(B1,4)&","&MID(B1,5,4)&","&RIGHT(B1,4)对于 39297500424 .但是超过 12 的长度呢?

最佳答案

如果您的号码长度超过 16,就像您的第一个示例一样,您需要将其作为文本输入,因为 Excel 的限制是 15 位。

使用 A1 中的字符串的一种方法是:

A2:  =IF(RIGHT(REPLACE(A1,4*ROWS($1:1)+ROWS($1:1),0,","),1)=",","",REPLACE(A1,4*ROWS($1:1)+ROWS($1:1),0,","))

并填写直到你得到空白,即使你有成千上万的数字。

然后,在其他一些单元格中(下面我的屏幕截图中的 B1),输入:
=LOOKUP(2,1/LEN($A:$A),$A:$A)

这将返回 A 列中的最后一个非空白条目,这是您的结果。

enter image description here

对于更灵活的东西,建议使用 VBA 编写的 UDF(用户定义函数)。以下 UDF 有一些 可选 参数允许您根据需要指定要插入的不同字符和不同的间距。如果您不指定字符串以外的任何内容,它将每四分之一插入一次逗号。

它还演示了 VBA Format 的使用。功能。
Option Explicit
Function InsertChar(STR As String, Optional sInsertCharacter As String = ",", Optional lSpacing As Long = 4) As String
Dim sCharString As String
Dim sFormatString As String
Dim sTemp As String
Dim I As Long

For I = 1 To lSpacing
sCharString = sCharString & "&"
Next I
sCharString = sCharString & sInsertCharacter

For I = 0 To Len(STR) \ lSpacing
sFormatString = sFormatString & sCharString
Next I

sFormatString = "!" & Left(sFormatString, Len(sFormatString) - 1)

sTemp = Format(STR, sFormatString)
If Right(sTemp, 1) = "," Then sTemp = Left(sTemp, Len(sTemp) - 1)

InsertChar = sTemp

End Function

关于excel - 如何在excel中每4位长度为1000的数字后添加逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41414899/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com