VBA Excel-将小数点添加到整数
我真的很不想问,我觉得什么应该能够通过快速运行搜索引擎来解决,但我看不到任何效果 我正在从CSV中提取一些数据,这些数据实际上应该表示为十进制,但不是(例如,它应该是757.46而不是75746)。使用格式(expresion,“Currency”)、格式(expression,“Fixed”)等等,都不会产生预期的效果。这些函数只是附加一个小数点和额外的零(75746.00而不是757.46)。有没有一种简单的方法可以指示模块取一个整数,在右边加一个十进制数,在左边加一个可变数,并且不加任何额外的东西。我确信有一种方法可以通过转换为字符串、使用子字符串等来实现这一点,但如果可能的话,我希望避免这种情况VBA Excel-将小数点添加到整数,excel,vba,Excel,Vba,我真的很不想问,我觉得什么应该能够通过快速运行搜索引擎来解决,但我看不到任何效果 我正在从CSV中提取一些数据,这些数据实际上应该表示为十进制,但不是(例如,它应该是757.46而不是75746)。使用格式(expresion,“Currency”)、格式(expression,“Fixed”)等等,都不会产生预期的效果。这些函数只是附加一个小数点和额外的零(75746.00而不是757.46)。有没有一种简单的方法可以指示模块取一个整数,在右边加一个十进制数,在左边加一个可变数,并且不加任何额
谢谢 将给出的数字除以100,然后将格式设置为货币应该有效。使用下面的代码,它将在行中循环,并将A列的原始值放入B列:
Sub ChangeOrigFormat()
Dim lrow As Long
' modify to your last row , or use dynamic last row method
For lrow = 2 To 10
' put result on Column B
With Cells(lrow, 2)
' looking in original values in Column A >> modify according to your needs
.Value = Cells(lrow, 1) / 100
' using a decimal with 2 digits after the "."
.NumberFormat = "0.00"
End With
Next lrow
End Sub
如果使用
Format(expression,“Currency”)
将75746.00作为单元格,则Format(expression/100,“Currency”)
应给出正确的结果。您还需要检查表达式是否还没有小数点在除以100后对其进行格式化如何提取数据?如果使用“数据”选项卡,则有机会告诉Excel十进制分隔符是什么:如果没有看到代码或数据,就不可能给出最佳解决方案。请阅读帮助主题,也知道我感觉自己像个傻瓜。我怎么能忽略这么简单的事情呢。感谢你和所有提出建议的人。