2016-01-23 52 views
0

我的问题听起来很简单: 我想用ms访问表单中的按钮打印一些查询。使用ms访问按钮在纸张上打印记录

实施例:

Private Sub Print_Click() 

    sqls = " SELECT * FROM " _ 
      & "NAME WHERE ID = " & variable & ";" 

     Print sqls on paper  ' This is just a simple explanation of what I want 
+0

在纸张上必须打印用户友好的表格,而不是sql代码:) – PlusU

+0

为什么不打印报表,将过滤数据作为您的表格查询?如果你感兴趣,我可以给代码。 – harun24hr

+0

是的,我认为这会有所帮助。请给我一个代码。 – PlusU

回答

1

从表格设计报告。使用报告Record Source= YourTable。在表格中使用Command Button来打印报告。该按钮将根据您的variable过滤报告数据并通过默认打印机打印报告。这里"[ID]=" & variable这是命令的Where Condition。这部分将过滤数据为variable

Private Sub Print_Click() 
    'DoCmd.OpenReport "YourReportName", acPreview, , "[ID]=" & Me.txtID 
    DoCmd.OpenReport "YourReportName", acNormal, , "[ID]=" & variable 
End Sub 
+0

'acPreview'会预览报告,'acNormal'会直接打印报告。 – harun24hr

0

在一个形式,任何形式,把一个未结合的文本框。在我的例子中,我已经命名文本框'XportXL'。创建一个命令按钮。在未绑定的控件中输入查询的名称。这将适用于任何查询 - 只需在未绑定的控件中输入其名称即可。 ( “E:\彼得\桌面\ filename.xlsx” 只是,我wnat专家的地方)把下面的代码在onclick事件: 昏暗更改为MyQuery作为字符串 更改为MyQuery = Me.XportXL

If IsNull(Me.XportXL) Then 
    DisplayMessage ("We need something to export.") 
    Exit Sub 
Else 
    DoCmd.OutputTo acOutputQuery, MyQuery, acFormatXLSX, "E:\Peter\Desktop\filename.xlsx", False, "", , acExportQualityScreen 
End If 
+0

谢谢你的回答,这段代码不能打印excel文件...我必须打开excel文件并点击打印。这不是解决方案 – PlusU