excel vba 批量套打快递单批量打印单据

2025-11-22 02:28:39

1、设置快递单的自定义纸张

选择对应打印机-点击打印服务器属性-勾选创建新表单-输入表单名称-填写对应尺寸-点击保存表单(快递单的高度=1.27cm×边孔数量)

excel vba 批量套打快递单批量打印单据

2、设置纸张规格

选择对应打印机-右键点击打印首选项-打开高级选项卡-纸张规格选择新增的自定义纸张

excel vba 批量套打快递单批量打印单据

excel vba 批量套打快递单批量打印单据

3、设置进纸规格

选择对应打印机-右键点击属性-打开设备设置-进纸器选择新增的自定义纸张

excel vba 批量套打快递单批量打印单据

excel vba 批量套打快递单批量打印单据

4、下载快递套打模板

测试打印根据实际的偏移情况进行调整设置,调整边距和缩放比例点击设置打印边距;

下载地址:

excel vba 批量套打快递单批量打印单据

1、打印明细字段名修改方法

1,修改【打印明细】字段名,也可以变化前后顺序,不需要的字段也可以删除。

2,同步修改【参数】表内D列对应的名称。

3,E列是自动更新不用更新

excel vba 批量套打快递单批量打印单据

2、新增调整修改打印字段位置方法

1,在【参数】内A列添加或者修改字段名,自定义自己明白即可。

2,在【参数】内B列添加此字段在【打印模板】对应行数。

3,在【参数】内C列添加此字段在【打印模板】对应列数。

4,在【参数】内D列添加此字段在【打印明细】对应表头字段名。

excel vba 批量套打快递单批量打印单据

excel vba 批量套打快递单批量打印单据

excel vba 批量套打快递单批量打印单据

3、设置新的打印模板

1,【打印模板】可以删除背景,添加新的快递单背景,或者设置需要打印的表单。

2,设置完毕新的格式后设置新的打印区域。

3,修改【参数】内各字段对应数据。

excel vba 批量套打快递单批量打印单据

4、具体VBA编程如下,详细的下载附件

Private Sub 打印全部数据_Click()

config = vbYesNo + vbQuestion + vbDefaultButton1

 ans = MsgBox("你确认打印全部数据吗?", config, "如风达")

    If ans = vbYes Then

     Dim A&, B&, C&, D$, E$,R1&, C1&, R2&, C2&, R3&, C3&, R4&, C4&, SF$

  '当前工作表名

   SF = ActiveSheet.Name   

   '打印明细的最后列,行  

   R1 = Sheets("打印明细").UsedRange.Rows.Count  

   C1 = Sheets("打印明细").UsedRange.Columns.Count 

   '参数的最后列,行  

   R2 = Sheets("参数").UsedRange.Rows.Count 

   C2 = Sheets("参数").UsedRange.Columns.Count

      '更新打印位置对应列

     For B = 2 To R2

       Sheets("参数").Cells(B, 5) = ""

           For A = 1 To C1

              If Sheets("参数").Cells(B, 4).Text = Sheets("打印明细").Cells(1, A).Text Then

               Sheets("参数").Cells(B, 5) = A

               End If

           Next

        Next      

   '查询指定订单的信息

       For R4 = 2 To R1

           For A = 2 To R2

              If Sheets("参数").Cells(A, 5).Text <> "" Then

              '生成明细列

               C4 = Sheets("参数").Cells(A, 5).Text

              '生成目标对应行列

               R3 = Sheets("参数").Cells(A, 2).Text

               C3 = Sheets("参数").Cells(A, 3).Text                  

               ActiveSheet.Cells(R3, C3).Value = Sheets("打印明细").Cells(R4, C4).Text              

             End If

           Next

          ActiveSheet.PrintOut From:=1, To:=1         

        Next   

     MsgBox "打印完成!", vbInformation

  If ans = vbNo Then

  Exit Sub

End If  

End If

End Sub

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢