我在excel中编写一个应用程序,可以帮助您学习完成Square的过程。如果变量是整数,我希望将单元格格式化为数字,如果不是,则将格式化为分数。
If h = (Int(h)) Then
Range("D1").Select
Selection.NumberFormat = "Number"
Else
Range("D1").Select
Selection.NumberFormat = "?/?"
End If
此代码由于某种原因不起作用,给我以下错误:
无法设置Range类的NumberFormat属性
我还有其他方法吗?
答案 0 :(得分:2)
尝试:
If h = (Int(h)) Then
Range("D1").Select
Selection.NumberFormat = "0"
Else
Range("D1").Select
Selection.NumberFormat = "# ?/?"
End If
但是,如果将整数格式化为分数,它仍将显示为整数(即“1”作为分数仍为“1”)。那么为什么不把它格式化为一个分数呢?