ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 270|回复: 2

[求助] 再问:QRMaker二维码打印时无法刷新

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-2-20 16:26 | 显示全部楼层 |阅读模式
如题问题,之前有其他人问过,但还没有解决方法。
QRMaker二维码打印是无法刷新?
https://club.excelhome.net/thread-1259169-1-1.html
(出处: ExcelHome技术论坛)

因现遇到同样问题,再次寻找解决办法。
问题是这样的,我做了个循环给每个机种根据特定数值生成二维码,每个机种二维码生成后就发送打印(即生成一个二维码后就打印,再生成另一个二维码),但最终的结果是所有打印出来的二维码都是第一个机种的二维码程序执行完后,excel表的二维码是变更了的,显示的是最后一个机种的二维码

可能有些人没有qrmaker的环境(32位OFFICE及注册qrmaker控件)无法测试,可以提供思路,我这边自行测试。

我尝试过以下方法都是不行:
1、执行打印命令前,再次刷新qr码,代码如下
    Sheets("检查表").QRmaker1.AutoRedraw = ArOn
   Sheets("检查表").QRmaker1.InputData = Sheets("检查表").Cells(8, 1).Value
   Sheets("检查表").Select
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False

2、调用workbook的beforeprint过程,对qr码进行操作,代码如下

   Private Sub Workbook_BeforePrint(Cancel As Boolean)
   Dim m
   For Each barcode In ActiveSheet.OLEObjects
    If LCase(barcode.Name) Like "qrmaker*" Then
        With barcode
        m = .Height
        .Height = m - 1
        .Height = m
        End With
    End If
   Next
  End Sub

3、把程序的Application.ScreenUpdating 设置为 true
4、使用代码暂停10秒再继续执行打印的代码(以为二维码更新需要时间)

以上4个方法试了,还是不行,结果还是打印出来的文件全部都是第一个机种的二维码。

目前试出来,只有通过使用代码的调试模式,在运行到打印的代码时暂停运行(在workbook的beforeprint过程中暂停也可以),再点继续运行,这样打印的二维码才会更新。
请教各位大神有没有解决的方法或提供解决的思路。

TA的精华主题

TA的得分主题

发表于 2024-3-12 13:42 来自手机 | 显示全部楼层
我也尝试过很多方法,最后还得用纯代码解决,目前测试暂时没发现问题。
二维码条形码同理
115754z1b287g6a76822b2.jpg

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-4-23 09:49 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-9-29 10:23 , Processed in 0.032427 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表