如题所述
excel vba 批量套打快递单,批量打印单据,可以自定义修改设置新的格式。
快递套打模板2015:点击下载
1、设置快递单的自定义纸张。选择对应打印机-点击打印服务器属性-勾选创建新表单-输入表单名称-填写对应尺寸-点击保存表单(快递单的高度=1.27cm边孔数量)
2、设置纸张规格。选择对应打印机-右键点击打印首选项-打开高级选项卡-纸张规格选择新增的自定义纸张
3、设置进纸规格。选择对应打印机-右键点击属性-打开设备设置-进纸器选择新增的自定义纸张
4、下载快递套打模板。测试打印根据实际的偏移情况进行调整设置,调整边距和缩放比例点击设置打印边距;
其他相关设置:
1、打印明细字段名修改方法
1)修改【打印明细】字段名,也可以变化前后顺序,不需要的字段也可以删除。
2)同步修改【参数】表内D列对应的名称。
3)E列是自动更新不用更新
2、新增调整修改打印字段位置方法
1)在【参数】内A列添加或者修改字段名,自定义自己明白即可。
2)在【参数】内B列添加此字段在【打印模板】对应行数。
3)在【参数】内C列添加此字段在【打印模板】对应列数。
4,在【参数】内D列添加此字段在【打印明细】对应表头字段名。
3、设置新的打印模板
1)【打印模板】可以删除背景,添加新的快递单背景,或者设置需要打印的表单。
2)设置完毕新的格式后设置新的打印区域。
3)修改【参数】内各字段对应数据。
4、具体VBA编程如下,
复制内容到剪贴板PrivateSub打印全部数据_Click()config=vbYesNo+vbQuestion+vbDefaultButton1ans=MsgBox(你确认打印全部数据吗?,config,如风达)Ifans=vbYesThenDimA,B,C,D$,E$,R1,C1,R2,C2,R3,C3,R4,C4,SF$'当前工作表名SF=ActiveSheet.Name'打印明细的最后列,行R1=Sheets(打印明细).UsedRange.Rows.CountC1=Sheets(打印明细).UsedRange.Columns.Count'参数的最后列,行R2=Sheets(参数).UsedRange.Rows.CountC2=Sheets(参数).UsedRange.Columns.Count'更新打印位置对应列ForB=2ToR2Sheets(参数).Cells(B,5)=ForA=1ToC1IfSheets(参数).Cells(B,4).Text=Sheets(打印明细).Cells(1,A).TextThenSheets(参数).Cells(B,5)=AEndIfNextNext'查询指定订单的信息ForR4=2ToR1ForA=2ToR2IfSheets(参数).Cells(A,5).TextThen'生成明细列C4=Sheets(参数).Cells(A,5).Text'生成目标对应行列R3=Sheets(参数).Cells(A,2).TextC3=Sheets(参数).Cells(A,3).TextActiveSheet.Cells(R3,C3).Value=Sheets(打印明细).Cells(R4,C4).TextEndIfNextActiveSheet.PrintOutFrom:=1,To:=1NextMsgBox打印完成!,vbInformationIfans=vbNoThenExitSubEndIfEndIfEndSub
温馨提示:答案为网友推荐,仅供参考