我试图在小数点处分割一个数字并将这两个部分存储在两个字符串中。
E.g。 12.345存储为S1 = 12和S2 = 345
E.g。 12.3450存储为S1 = 12和S2 = 345
有人可以为我指导excel VBA吗?
答案 0 :(得分:2)
您可以使用拆分功能执行此操作:
Dim splitnnum
Dim num as Double
num = 111.222
splitnum = Split(Str(num), ".")
s1 = splitnum(0)
s2 = splitnum(1)
答案 1 :(得分:2)
这将以十进制分割并将每个部分分配给一个字符串。
Dim x as Variant
Dim num1 as String, num2 as String
x = Split(Str(12.345), ".")
num1 = x(Lbound(x,1))
num2 = x(Ubound(x,1))
答案 2 :(得分:0)
最简单的方法可能是:
Dim lHolder as Double
Dim lWhole as Double
Dim lRemain as Double
lHolder = 12.345 ' Or whatever variable you have your number stored in
lWhole = Fix(lHolder)
lRemain = lHolder - lWhole
然后您可以根据需要舍入lRemain。例如
Round(lRemain, 5) ' Rounds out to 5 decimal places
将返回.345
答案 3 :(得分:0)
这会破坏小数点的数字
mynumber = 111.222
splitmynumber = Split(Str(mynumber),"。")
'这是一个存储2号码的数组
numberbeforedecimal = val(splitmynumber(0))
numberafterdecimal = val(splitmynumber(1))
答案:111& 222