[英]0 is ignored when assigning value to cell in VBA
为什么当我这样做时, ActiveCell.Value = "1.10"
,我最终得到ActiveCell.Value = 1.1
?
我希望右侧的字符串类型与我为其赋值的单元格的内容完全匹配。
因为它们是作为数字处理的,并且在数学上1.10
和1.1
是相等的!
如果您在数字前使用'
ActiveCell.Value = "'1.10"
它强制 Excel 将其作为文本/字符串处理。 请注意,您将无法再使用它进行计算。
替代方法是将数字格式设置为 taxt,然后添加值
ActiveCell.NumberFormat = "@"
ActiveCell.Value = "1.10"
或者类似的东西
Dim foo As Variant
foo = "1.10"
ActiveCell.Value = "'" & foo
如果你想让它被认为是一个数字(这样你就可以用它来计算)并且仍然让它看起来像一个 2 位小数然后使用
ActiveCell.Value = "1.1"
并正确格式化
ActiveCell.NumberFormat = "#.00"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.