我希望这有一个简单的解决方案。我需要从工作表中获取值,执行计算并将它们插入到隐藏的工作表中(稍后将上载到数据库中)。我通常不用VBA编程,所以我不确定我做错了什么。我的问题是:当我将工作表中的数据复制到数组中时,当我指定long时,它们会像整数一样舍入。以下代码段将为您提供问题的概念。我是否错误地初始化了数组?
Dim ThisWS As Worksheet
Set ThisWS = Excel.ActiveWorkbook.Worksheets("BchSheet")
Dim BTW() As Long 'Beaker Tare Weight
ReDim Preserve BTW(Samples)
BTW(1) = ThisWS.Cells(18, 6).Value 'Value in cell is 98.7036
MsgBox (ThisWS.Cells(18, 6).Value) 'Returns 98.7036
MsgBox (BTW(1)) 'Returns 99
答案 0 :(得分:7)
Long
数据类型(如Integer
)仅包含整数。
使用Double
数据类型来存储小数,如果您正在使用需要定点的计算或者您不想处理浮点数,请使用Currency
数据类型