以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 打印条形码问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=195716) |
||||
-- 作者:13315253800 -- 发布时间:2025/3/4 8:44:00 -- 打印条形码问题 在生成每个员工的资料卡之前,都先根据员工编号合成一个条形码,并保存为约定的图片文件,然后显示打印。我参照帮助中的WordReport案例5试着改了一下,未能实现打印选定行的条形码,请蓝老师指导 Dim tm As String = ProjectPath & "Attachments\\员工资料卡.doc" \'指定模板文件Dim fl As String =
ProjectPath & "Reports\\员工资料卡.doc" \'指定目标文件 Dim mg As String = ProjectPath & "Images\\条形码.wmf" \'约定的图片文件 Dim wrt As New WordReport(Tables("员工"), tm, fl) \'定义一个WordReport For Each r As Row In Tables("员工").Rows \'逐行生成报表 Dim
Bar As New
BarCodeBuilder \'Bar.Symbology
= Barpro.Symbology.QRCode \'二维码 Bar.Symbology =
Barpro.Symbology.Code39 \'条形码 \'Bar.QRCodeModuleSize
= 2 \'二维码的放大倍数 \'Bar.Code
= "姓名:" & r("姓名") & vbcrlf & "部门:" & r("部门") & vbcrlf & "电话:" & r("办公电话") bar.Code = r("编号") \'员工编号列 bar.SaveImage(mg, 300) wrt.BuildOne(r) Next wrt.Show() \'显示报表 |
||||
-- 作者:有点蓝 -- 发布时间:2025/3/4 8:49:00 -- 模板发上来看看 下面代码放到第2行,不是第一行后面 Dim fl As String = ProjectPath & "Reports\\员工资料卡.doc"
|
||||
-- 作者:13315253800 -- 发布时间:2025/3/4 16:36:00 -- 蓝老师,针对条形码我做了一个案例,指导修改一下代码
|
||||
-- 作者:有点蓝 -- 发布时间:2025/3/4 17:29:00 -- 1楼代码测试没有问题,注意不能生成空条码 Dim tm As String = ProjectPath & "Attachments\\员工资料卡.doc" \'指定模板文件 Dim fl As String = ProjectPath & "Reports\\员工资料卡.doc" \'指定目标文件 Dim mg As String = ProjectPath & "Images\\条形码.wmf" \'约定的图片文件 Dim wrt As New WordReport(Tables("员工"), tm, fl) \'定义一个WordReport For Each r As Row In Tables("员工").Rows \'逐行生成报表 If r.IsNull("编号") = False Then Dim Bar As New BarCodeBuilder Bar.Symbology = Barpro.Symbology.Code39 \'条形码 bar.Code = r("编号") \'员工编号列 bar.SaveImage(mg, 300) wrt.BuildOne(r) End If Next wrt.Show() \'显示报表 |
||||
-- 作者:13315253800 -- 发布时间:2025/3/5 8:24:00 -- 谢谢蓝老师!再问一下,如果我只想显示选定的当前行,而不是逐行显示,如何修改代码 |
||||
-- 作者:有点蓝 -- 发布时间:2025/3/5 8:36:00 -- dim r As Row In Tables("员工").current If r isnot nothing andalso r.IsNull("编号") = False Then Dim tm As String = ProjectPath & "Attachments\\员工资料卡.doc" \'指定模板文件 Dim fl As String = ProjectPath & "Reports\\员工资料卡.doc" \'指定目标文件 Dim mg As String = ProjectPath & "Images\\条形码.wmf" \'约定的图片文件 Dim wrt As New WordReport(Tables("员工"), tm, fl) \'定义一个WordReport Dim Bar As New BarCodeBuilder Bar.Symbology = Barpro.Symbology.Code39 \'条形码 bar.Code = r("编号") \'员工编号列 bar.SaveImage(mg, 300) wrt.BuildOne(r) wrt.Show() \'显示报表 End If |
||||
-- 作者:13315253800 -- 发布时间:2025/3/5 9:17:00 -- 老师,上面代码保存时提示错误 |
||||
-- 作者:有点蓝 -- 发布时间:2025/3/5 9:45:00 -- 很简单的笔误,自己学会判断一下 dim r As Row = Tables("员工").current
|
||||
-- 作者:13315253800 -- 发布时间:2025/3/5 10:22:00 -- 蓝老师,上面的代码如果应用在Excel中怎么修改一下代码 Dim Book As New XLS.Book \'定义一个Excel工作簿 不知放在什么位置 Dim r As Row = Tables("表A").current If r IsNot Nothing AndAlso r.IsNull("条码") = False Then Dim tm As String = ProjectPath & "Attachments\\销售统计.xls" \'指定模板文件 Dim fl As String = ProjectPath & "Reports\\销售统计.xls" \'指定目标文件 Dim mg As String = ProjectPath & "Images\\条形码.wmf" \'约定的图片文件 Dim wrt As New
WordReport(Tables("表A"), tm, fl) \'定义一个WordReport Dim Bar As New
BarCodeBuilder Bar.Symbology = Barpro.Symbology.Code128 \'条形码 bar.Code = r("条码") \'员工编号列 bar.SaveImage(mg, 300) wrt.BuildOne(r) wrt.Show() \'显示报表 End
If [此贴子已经被作者于2025/3/5 10:24:17编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2025/3/5 10:23:00 -- http://www.foxtable.com/webhelp/topics/1145.htm |