如何在 VBA 中使用 Excel 的内置模函数 (MOD)?



我的问题与这篇文章有些关联。

但是,假设我想在VBA中使用Excel内置的MOD(模(函数。该网站表明,使用Application.WorksheetFunction.[insert name of Excel function]将提供所需的效果。

但是,Application.WorksheetFunction.MOD不起作用。

事实上,当我简单地在VBA中键入Application.WorksheetFunction.时,会出现一个下拉菜单,提供一个函数名称列表供选择,但该列表中没有提供MOD

2个问题:

  1. 这是怎么回事
  2. 如何在VBA中实际使用Excel内置的MOD函数

注意:我从这个路径开始b/c我试图使用VBA的Mod函数使1.7 Mod 0.5等于0.2,但它在我应用VBA函数的Excel单元格中生成#VALUE!。但是,如果我直接在Excel中键入MOD(1.7,0.5),我会得到正确的答案(即0.2(

您可以按原样使用,因为它是一个运算符(带整数(。如果您想使用替身等,请使用evaluate,例如

例如

Debug.Print 2 Mod 12
Debug.Print Evaluate("Mod(1.7,0.5)")
Dim x As Double, y As Double
x = 1.7
y = 0.5
Debug.Print Evaluate("Mod(" & x & "," & y & ")")

请参阅文档。大量存在局限性。微软提供的一个常见解决方案是:

=number-(INT(number/divisor)*divisor)

相关内容

最新更新