Popular blog tags

BarTender 集成模式之四:Commander的触发式集成:EXCEL VBA集成 Bartender 打印标签

Published

http://www.accessoft.com/article-show.asp?id=17583

EXCEL VBA集成的文章,还提供了源码,然后我就开始在我的系统制作打印界面,其实就是在原来的界面添加打印按钮而已,把代码放入单击事件,并进行相应的调整。我修改后的代码如下:

vba

Private Sub btnPrint_Click()
    
    Dim file_path As String
    Dim btApp As BarTender.Application
    Dim btFormat As BarTender.Format


    '设置标签模板文件的路径
    file_path = "\\server\打印标签\IT资产标签.btw"
    Set btApp = CreateObject("bartender.application")
    btApp.Visible = True    'true为打印时显示bartender主程序界面
    Set btFormat = btApp.Formats.Open(file_path)

    '第一个参数为标签上的“命名子字串”,第二个参数是要传递过去的值
    btFormat.SetNamedSubStringValue "type", Me.sfrList![资产类型]
    btFormat.SetNamedSubStringValue "serialNumber", Me.sfrList![出厂编号]
    btFormat.SetNamedSubStringValue "name", Me.sfrList![资产名称]
    btFormat.SetNamedSubStringValue "QRCode", Me.sfrList![资产ID]
    btFormat.SetNamedSubStringValue "barCode", Me.sfrList![资产ID]

    btFormat.PrintSetup.IdenticalCopiesOfLabel = 1 '设置打印的份数
    '第一个true为显示打印状态窗口,第二true为显示打印对话框(这里必须要加参数,最初的代码无参,不仅不打印还害我程序卡死了N回)
    btFormat.PrintOut True, True
    '设置打印完毕不保存对标签文件的更改(只打印好像它也会认为有修改)
    btFormat.Close btDoNotSaveChanges
    btApp.Quit

End Sub