【发布时间】:2015-04-06 06:42:12
【问题描述】:
我对 VBA 很陌生,我正在尝试在发票创建表单上创建一个按钮来打印发票。按钮的 On Click 事件应打开一个报表并将表单上的 Invoice ID 分配给 openargs 属性。
Private Sub cmdPrint_Click()
Dim InvoiceNum As Integer
If Me.Dirty Then 'Save any edits.
Me.Dirty = False
End If
If Me.NewRecord Then 'Check there is a record to print
MsgBox "Select a record to print"
Else
InvoiceNum = Me.[Invoice Number]
DoCmd.OpenReport "Invoice", acViewPreview, , , , InvoiceNum
End If
End Sub
然后当报表打开时,它会运行代码:
Dim InvoiceNum As Integer
InvoiceNum = Me.OpenArgs
但是,当我单击表单上的按钮时,会出现输入参数框。奇怪的是,此框中的文本是我要分配给 OpenArgs 属性的发票编号的值。我不知道如何使 OpenArgs 的值成为表单中的发票编号。
我不确定我做错了什么,似乎无法在任何地方找到答案。 任何帮助将不胜感激。
【问题讨论】:
-
它必须工作,所以其他事情正在发生。 1:在打开报表时引发的 OnLoad 和其他事件中查找代码。 2:尝试重命名变量。 3:尝试使用:InvoiceNum = Me![Invoice Number].Value