自定义函数公式在一个单元格中工作而不是另一个

时间:2014-01-20 20:37:08

标签: excel excel-vba excel-2010 vba

我正在尝试将公式保存为同事的自定义函数,因为它不断出现,她需要它。我终于设法让它工作 - 在一个单元格上。但它并没有在另一个细胞上工作。

数据:

需要的结果 45.00 486.00

需要的结果 43.50 108.00

Excel中的公式为=ROUNDUP((D16/C16)*4,0)/4

我认为在VBA模块中它是

Function RoundQuantity(Amount, Rate) As Integer
   RoundQuantity = Application.RoundUp((Amount / Rate) * 4, 0) / 4
End Function

当我从Excel调用此函数时,我正在使用=RoundQuantity(D16,C16)并且它成功地从10.48到11.00,但是它在2.48到2.00之间。

为了解释这个功能,我试图将数量(第一列)四舍五入到最近的四分之一。

请帮帮忙?

1 个答案:

答案 0 :(得分:1)

虽然我没有完全得到术语nearest quarter,但您评估2.00的原因很简单 - 您的函数返回一个整数。只需将Function RoundQuantity(Amount, Rate) As Integer更改为Function RoundQuantity(Amount, Rate),它就会返回2.50,前提是它的格式正确。

请参阅下面的屏幕截图:

enter image description here

如果有帮助,请告诉我们。

相关问题