我正在构建MS Access(2010)应用程序,我将从此应用程序打印条形码标签 . 还有许多其他报告和表格也将使用标准打印机设置进行打印,但是使用条形码我需要将其打印到特定打印机,并且必须将其设置为使用特殊页面大小 .
在我的搜索中,我有found the printer object's property "Papersize",它本身有相当多的'standard'默认选项,包括标准美国信函8.5" x 11"的acPRPSLetter和A4纸张尺寸的acPRPSA4 . 所有预设尺寸都不适合我的使用 . 有一个预设表示用户自定义大小,acPRPSUser,但我没有找到任何方式以编程方式设置自定义大小 .
我确实读过打印机的'.height'和'.width'属性,但看起来它们并不存在于用于Access 2010的VB中(我相信它基于VB6) .
任何人都可以帮我在Access 2010中使用VB代码设置自定义纸张大小吗?
3 回答
不需要VBA . 您可以使用菜单中的页面设置命令设置页边距,方向,纸张,打印机和列的所有页面设置:报表设计工具>页面设置>页面设置>页面>纸张>尺寸,或>页面> ReportName的打印机>使用特定打印机>打印机>属性 . 为每个简单报告保存这些设置 .
我有同样的问题 . 我用How to: Programmatically Retrieve Printer Capabilities解决了
我制作了一个带有程序打印输出的模块 . 使用Function Printerselection,我可以使用printername的特定部分调用打印机 . PaperSelection函数用于使用纸张名称的特定部分指定纸张 .
首先,我必须使用DeviceCapabilities函数API调用的声明
看起来你需要注意
.DefaultSize
- 如果是真的,那么你的ItemSizeHeight
和ItemSizeWidth
设置会被忽略有关MSDN以及一些示例的更多信息