通过VBA在excel中的3个字符后添加空格
Excel vba中是否有在每三个字符后添加空格的功能?通过VBA在excel中的3个字符后添加空格,vba,excel,Vba,Excel,Excel vba中是否有在每三个字符后添加空格的功能? 列标题的名称是POST您尝试了什么?这是一种方法——注意:在使用代码之前检查您是否理解代码总是很好的 Function AddSpace(rng As Range) As String Dim i As Integer Dim str As String For i = 1 To Len(rng.Value) Step 3 str = str & " " & Mid(rng.Valu
列标题的名称是POST您尝试了什么?这是一种方法——注意:在使用代码之前检查您是否理解代码总是很好的
Function AddSpace(rng As Range) As String
Dim i As Integer
Dim str As String
For i = 1 To Len(rng.Value) Step 3
str = str & " " & Mid(rng.Value, i, 3)
Next i
AddSpace = Mid(str, 2)
End Function
对于单元格A1中的字符串,请使用公式=ADDSPACEA1根据需要拆分字符串。下面的例子
编辑:稍微更新了代码-谢谢Tyeler,因为Callum已经为您提供了一些代码,我将把这个留给将来可能遇到它的任何人。这与Callum的代码所做的相同,但不是在函数中引用不同的单元格,而是在字符串中输入 例如,在单元格A1中,您可以输入=AddSpacemystring,它会将A1中的值返回为mys tri ng。只是一个选择
Function AddSpace(Strng As String) As String
Dim t As String, i As Long
For i = 1 To Len(Strng) Step 3
t = t & " " & Mid$(Strng, i, 3)
Next i
AddSpace= Mid$(t, 2)
End Function
是的,你可以创造性地使用Mid来实现这个目标。但这不是一个免费的编码服务,相反,我们在这里帮助您找出为什么您的代码出错或没有做您需要的事情。因此,为了让我们帮助您更正代码,您必须已经尝试解决问题并演示此。。。如果你展示你已经尝试过的东西,你会发现你更有可能得到你需要的帮助。发现并替换??。但它不起作用。在VBA中,使用Range.Find方法可以很容易地找到列;和正则表达式来进行插入。如果您不希望在三个字符组(如果该组出现在行尾)后面有空格,那么可以将其添加到正则表达式中。如果遇到问题,请尝试并发回。您也可以使用工作表公式在Office365/Excel2016中执行此操作。