Option Compare Database
Private Sub Command119_Click()
DoCmd.OpenForm "PrinterFhamyLabel"
Forms!PrinterFhamyLabel.Text59 = Me.JOBNum
End Sub
我有两种形式:
表单PrinterFhamyInput具有文本框JOBNum表单PrinterFhamyLabel具有文本框Text59
我将在表单PrinterFhamyInput中的文本框JOBNum中输入数据,然后单击PrinterFhamyInput表单上的一个按钮,该表单应打开Form PrinterFhamyLabel,文本框Text59填充来自字段JOBNum的数据。
在表级:
PrinterFhamyInput有一个名为JOB#的字段,而PrinterFhamyLabel有一个名为JOB#的字段(附图像)。
我想在PrinterFhamyInput表单中输入JOB#,Description和QTY,然后单击“PrintLabel”按钮,打开Label Form并填充这三个输入。我输入日期然后打印标签。
Form_PrinterFhamy_Label.
应该激发intellisense弹出提示。在VBA编辑器中查看表单和报告名称 - 它们都有前缀。这就是VBA引发智能感知的名称。如果代码在表单后面,可以使用Me.
别名。
打开表单或报表过滤到所需记录,并将文本框绑定到字段JobNum:
Private Sub Command119_Click()
DoCmd.OpenReport "PrinterFhamyLabel", , , "[Job#]=" & Me.JobNum
End Sub
如果JobNum是文本类型字段:
DoCmd.OpenReport "PrinterFhamyLabel", , , "[Job#]='" & Me.JobNum & "'"
建议你做一些关于使用OpenForm / OpenReport方法的基础研究。
建议不要在命名约定中使用空格或标点符号/特殊字符(仅下划线异常)。如果使用,请将名称括在[]中。 JobNum比Job#更好。此外,camelCase或PascalCase比ALLCAPS更容易阅读。
Option Compare Database
Private Sub Command119_Click()
DoCmd.OpenForm "PrinterFhamylabel"
Forms![PrinterFhamyLabel].JOB = Me.JOBNum
Me.JOBNum.SetFocus
End Sub
这解决了它,感谢@ June7的所有帮助和指导。