我正在尝试在 Access VBA 中将数字格式化为货币。
在即时窗口中,当我输入:
? Format(123, "Currency")
我得到了预期的回应:“$123.00”
但是,在代码窗口中,当我输入:
Debug.Print Format(123, "Currency")
我收到指向该行的错误:“运行时错误'13':类型不匹配”
为什么相同的简单代码在即时窗口中运行,但从代码窗口运行时抛出错误?
我正在尝试在 Access VBA 中将数字格式化为货币。
在即时窗口中,当我输入:
? Format(123, "Currency")
我得到了预期的回应:“$123.00”
但是,在代码窗口中,当我输入:
Debug.Print Format(123, "Currency")
我收到指向该行的错误:“运行时错误'13':类型不匹配”
为什么相同的简单代码在即时窗口中运行,但从代码窗口运行时抛出错误?
我不明白为什么您的第二个示例会导致错误。以下子例程在我的 Access 2003 系统上编译并运行,没有错误:
Public Sub test_Format()
Debug.Print Format(123, "Currency")
End Sub
在新数据库中尝试该子例程。也许您当前的数据库已损坏。
请参阅 Tony Toews 的Corrupt Microsoft Access MDB 常见问题解答
在调试窗口中,您只是不使用Debug.
Print
相当于?
所以Debug.Print Format(123, "Currency")
在代码中应该
Print Format(123, "Currency")
在调试窗口中或? Format(123, "Currency")
代码窗口是什么意思?
这有效:
Private Sub Form_Load()
Debug.Print Format(123, "Currency")
End Sub