我对小数点后两位的数字做了很多工作。我的加法机有一个很好的功能,我可以输入一串数字,比如 123456,它会自动为我插入小数点并将其显示为 1234.56。Excel 在高级选项下有一个功能,可以自动输入小数,但它是一个全局选项,所以没有它可能的帮助。因此,我为App_SheetChange事件处理程序设置了一些 VBA 代码,它将仅在格式化为显示带两位小数的数字的单元格上为我执行此操作。这样,我就不会得到我不想要的小数。代码非常简单。它看起来像这样:
If InStr(sFormat, "0.00") > 0 Then
If InStr(".", Source.Formula) = 0 Then
If IsNumeric(Source.Formula) Then
s = "00" & Source.Formula
s = Left(s, Len(s) - 2) & "." & Right(s, 2)
App.EnableEvents = False
Source.Formula = CDbl(s)
App.EnableEvents = True
End If
End If
End If
当我输入数据时,这工作得很好,但是如果我从另一个单元格复制数据,如果小数点后有有效数字,但如果它是零,它就可以工作。有没有办法判断数据是输入到单元格中还是从剪贴板粘贴?