在VBA中更改单元数据类型?

时间:2012-10-23 19:28:39

标签: excel vba math

我在excel中编写一个应用程序,可以帮助您学习完成Square的过程。如果变量是整数,我希望将单元格格式化为数字,如果不是,则将格式化为分数。

If h = (Int(h)) Then
Range("D1").Select
Selection.NumberFormat = "Number"
Else
Range("D1").Select
Selection.NumberFormat = "?/?"
End If

此代码由于某种原因不起作用,给我以下错误:

  

无法设置Range类的NumberFormat属性

我还有其他方法吗?

1 个答案:

答案 0 :(得分:2)

尝试:

If h = (Int(h)) Then
Range("D1").Select
Selection.NumberFormat = "0"
Else
Range("D1").Select
Selection.NumberFormat = "# ?/?"
End If

但是,如果将整数格式化为分数,它仍将显示为整数(即​​“1”作为分数仍为“1”)。那么为什么不把它格式化为一个分数呢?