2016-08-04 81 views
-1

我正在使用VBScript将数据输入到Excel工作表中。如果数字是VBScript中的整数,如何去除小数?

objWorksheet.Cells(1, 1) = 1 

当我运行此代码并打开工作表时,excel文件显示1.0。我喜欢它仅显示1

objWorksheet.Cells(1, 1) = 1.5 

当运行该代码,并打开工作表,Excel文件显示1.5,这是所期望的行为。

如何删除“.0”,以便只有整数在VBScript中显示?

+1

这也许是细胞的数量格式无关的脚本。另外,这是VBScript,还是VBA? –

+0

这是vbscript。而且我知道如何在Excel中使用截断函数来做到这一点,但我似乎无法在vbscript中找到等价物。 – Dillydill123

+0

为什么你要它显示不同的小数位数?通常如果有任何有小数位的数字,你希望它们全部四舍五入到相同的小数位数。 –

回答

0

这里有一个功能你:

Function GetTruncatedWholeNumber(sngToTruncate) 
    Dim intTruncated 
    intTruncated = CInt(sngToTruncate) 
    sngToTruncate = CSng(sngToTruncate) 'just to make sure it's a single. 

    If(sngToTruncate = intTruncated) Then _ 
     GetTruncatedWholeNumber = intTruncated Else _ 
     GetTruncatedWholeNumber = sngToTruncate 
End Function 
+0

谢谢你,但不幸的是,它确认了你在第一个评论中所说的与脚本无关的内容。如果你看看我最后的评论,我发现了一个古怪的解决方案,我不明白它的工作原理。在Excel中,我选择一系列单元格,并使用条件格式创建新规则,并使用公式确定要格式化的单元格。在“此公式为真的格式值”框中,我键入“= TRUNC(5.3,1)= 5.3”。 5.3是完全任意的。这适用于某些单元,但不适用于所有单元。你知道我该如何修复它吗? – Dillydill123

+1

不,不幸的是我更像是一个脚本向导而不是简单的Excel向导。 –

相关问题