Excel内置ROUND函数与VBA ROUND函数的区别

立即分享:

Excel 函数可以在您的工作中为您提供很多帮助。 在本文中,我们将讨论内置 ROUND 函数和 VBA ROUND 函数之间的区别。

您一定会在 Excel 中使用过 ROUND 函数。 如果你也使用VBA完成一些任务,你可能在代码中也使用过ROUND函数。 但是,工作表和 VBA 代码中的内置 ROUND 函数的工作方式不同。 下面我们将向您展示它们的工作方式有何不同。

内置 ROUND 函数

在此工作表中,您可以看到不同销售代表的销售额。 这些数字是工作表中的十进制数字。例如:

为了更方便地计算,您需要对这些数字进行四舍五入。 当然,您可以在 Excel 中使用 ROUND 函数。

  1. 单击工作表中需要输入数字的空白单元格。 在这里,我们将单击单元格 C2。
  2. 然后在单元格中输入公式:

=圆形(B2,0)

在这里,我们将数字四舍五入为整数。

  1. 之后,双击单元格 C2 的填充柄并为整列填充此公式。 结果如下图所示。

工作表功能

VBA ROUND 函数

有时使用 VBA 可以为您节省大量时间和精力。 这里可以使用VBA 对数字进行四舍五入。

  1. 按键盘上的快捷键“Alt+F11”打开Visual Basic编辑器。
  2. 然后在编辑器中插入一个新模块。插入模块
  3. 现在您将使用 VBA 宏。 这里我们将使用这个例子:
Sub VBARoundFunction()
  Dim nRowIndex As Integer

  '  Round the numbers in the target range
  For nRowIndex = 2 To Application.WorksheetFunction.CountA(Range("B:B"))
    Range("D" & nRowIndex) = Round(Range("B" & nRowIndex))
  Next nRowIndex
End Sub
  1. 之后,运行这个宏。 根据宏,结果将在 D 列中生成。

如果你看清楚结果,你可能会发现一些差异。 我们将在下一部分分析差异。

不同的结果

下图显示了内置 ROUND 函数和 VBA ROUND 函数的区别。VBA 结果

对于单元格B5中的数字,内置函数的结果是“353”,而VBA函数的结果是“352”。 在VBA中,ROUND函数在丢弃数中的第一个数为5时,始终保持偶数的结果。至于其他数,与内置函数的作用相同。 所以B4单元格的结果是172,B5单元格的结果是352,都是偶数。

现在您已经了解了两个不同 ROUND 函数的原因和结果。 下次需要使用VBA宏时,需要特别注意。 为了避免错误,您可以使用 VBA 代码中的内置函数。

Excel 应用程序也会损坏

如果你在工作中经常使用Excel,你一定知道它的强大。

但是,由于多种原因,Excel 应用程序仍然会损坏。 这时,您可以使用我们优秀的工具来 修复损坏的 xlsx 文件. 使用此工具可以轻松解决所有错误。

作者简介:

Anna Ma 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 修复Word doc文档问题 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。