如何获取Excel(VBA)中字符串中点之前的字符数?
例如:
213123.2321321将变为6而33.2312312将变为2。
我需要它来改变我的代码的工作方式,我认为这应该很容易做到。
更多信息:
我想做的是:
答案 0 :(得分:1)
您可以使用Int
获取数字的整数部分,然后使用Len
计算数字位数。
实际例子:
Function ChangeNumber(n As Double)
Select Case VBA.Len(Int(n))
Case 1: ChangeNumber = n / 100
Case 2, 3, 4: ChangeNumber = n / 1000
Case Is > 4: ChangeNumber = n / 10000
End Select
End Function
Sub Test()
Debug.Print ChangeNumber(123.123) //Prints 0.123123
Debug.Print ChangeNumber(1.23123) //Prints 0.0123123
Debug.Print ChangeNumber(1111.123123) //Prints 1.111123123
End Sub
您可以修改Case
声明以满足您的需求,即是否除以100,1000,10000或您选择的任何内容。