Excel将0%解释为大数字

时间:2017-06-20 14:18:26

标签: excel vba excel-vba

我在尝试使用VBA实现某些公式时遇到了一个奇怪的错误。这是我用来在我的单元格中放置“0.00%”而不是错误消息的公式:

ActiveWorkbook.Sheets("SM Summaries").Range("F6").FormulaR1C1 = "=IFERROR(RC[-2]/RC[-1], ""0.00%"")"

现在它将0.00%放置得很好,但即使它的单元格类型被定义为百分比,如果我按%排序最大到最小,它会将0放在顶部......

Largest to smallest 在这里,您可以看到即使从最大到最小也将0放在顶部的位置。并且细胞类型也适当地设置为百分比:

percentage 知道这里发生了什么吗?

我还试过放在0.00而不是0.00%以及0%和“0”,所有这些选项仍显示0被视为“大数字” 。上图中它们不是绿色的唯一原因是因为我设置条件格式规则以停止将0变为绿色(当数字大于1时)。

1 个答案:

答案 0 :(得分:3)

""0.00%""将值设为文本。因此,当Excel Sorts Descending将文本放在第一位时。

您需要输入0并将单元格格式化为百分比。因此,将""0.00%""替换为0。没有报价。引号强制数字为文本。

ActiveWorkbook.Sheets("SM Summaries").Range("F6").FormulaR1C1 = "=IFERROR(RC[-2]/RC[-1], 0)"