Excel VBA货币错误显示
我用的是MAC,版本:10.11.16“el Capitan” 我希望这一切都有意义 我正在学习VBA,使用一本名为“快速学习VBA,第一卷,Excel函数设计课程”的书 代码中的消息框显示正确的值,但该值为 电子表格单元格是荒谬的(见下文) 为什么会这样 我已按如下方式设置了电子表格: 旧价格作为货币 作为货币的新价格 按百分比折扣 我也试过折扣手机Excel VBA货币错误显示,vba,excel,Vba,Excel,我用的是MAC,版本:10.11.16“el Capitan” 我希望这一切都有意义 我正在学习VBA,使用一本名为“快速学习VBA,第一卷,Excel函数设计课程”的书 代码中的消息框显示正确的值,但该值为 电子表格单元格是荒谬的(见下文) 为什么会这样 我已按如下方式设置了电子表格: 旧价格作为货币 作为货币的新价格 按百分比折扣 我也试过折扣手机 自定义:0.00 作为编号:-1234.00(小数点后2位) 货币:-$1234.00(小数点后2位) 结果总是相同的值——无论我将折扣单元
- 自定义:
0.00
- 作为编号:
(小数点后2位)-1234.00
- 货币:
(小数点后2位)-$1234.00
old Price | New Price | Discount
----------------------------------------------------------
$12.50 | $18,483,160,287,229.10 | 10%
----------------------------------------------------------
$13.25 | $18,483,160,287,229.10 | 10%
----------------------------------------------------------
“新价格”单元格中的函数调用如下所示:
=NewPrice(E43,G43)
和=NewPrice(E44,G43)
功能代码如下:
Option Explicit
Function NewPrice(OldPrice As Currency, Discount As Currency) As Currency
Discount = OldPrice * Discount
NewPrice = OldPrice - Discount
MsgBox "Old price = " & OldPrice & vbCrLf & _
"Discount = " & Discount & vbCrLf & "New price = " & NewPrice
End Function
问题:为什么显示值错误得如此厉害?我无法获得该输出。我得到了正确的输出。问题一定是关于数据的一些方法。对我来说也很好(在Win7上)在Win7上也可以(旧价格为货币,小数点后两位,折扣为百分比,小数点后0位)我也不知道-您是否尝试过从空白工作簿开始,仅运行此示例?