wps excel指定数据区域,二维码生成区域,批量生成单元格二维码VBA宏代码

1、ALT+F11;

选定要使用VBA宏的表格子页

2、粘贴代码

bash 复制代码
Sub 批量生成二维码()
    Dim srcRng As Range, tgtRng As Range
    Dim cell As Range
    Dim qrUrl As String
    
    ' 1. 弹出对话框,让用户手动选择需要生成二维码的【数据源区域】
    On Error Resume Next
    Set srcRng = Application.InputBox("第一步:请用鼠标框选需要生成二维码的【数据区域】:", "选择数据列", Type:=8)
    On Error GoTo 0
    
    ' 如果用户点击了取消,则退出程序
    If srcRng Is Nothing Then
        MsgBox "操作已取消!", vbInformation
        Exit Sub
    End If
    
    ' 2. 弹出对话框,让用户手动选择二维码生成的【目标区域】
    On Error Resume Next
    Set tgtRng = Application.InputBox("第二步:请用鼠标框选二维码要插入的【目标区域】(行数需与数据区域一致):", "选择目标列", Type:=8)
    On Error GoTo 0
    
    ' 如果用户点击了取消,则退出程序
    If tgtRng Is Nothing Then
        MsgBox "操作已取消!", vbInformation
        Exit Sub
    End If
    
    ' 3. 校验两个区域的大小是否一致
    If srcRng.Rows.Count <> tgtRng.Rows.Count Then
        MsgBox "错误:数据区域和目标区域的行数不一致,请重新运行!", vbCritical
        Exit Sub
    End If
    
    ' 4. 遍历数据源区域,生成二维码并插入到目标区域
    Dim i As Long
    For i = 1 To srcRng.Rows.Count
        ' 获取数据源单元格和目标单元格
        Dim dataCell As Range, targetCell As Range
        Set dataCell = srcRng.Cells(i, 1)
        Set targetCell = tgtRng.Cells(i, 1)
        
        ' 判断单元格是否为空
        If Trim(dataCell.Value) <> "" Then
            ' 拼接二维码生成API地址
            qrUrl = "https://api.qrserver.com/v1/create-qr-code/?size=120x120&data=" & dataCell.Value
            
            ' 在目标单元格插入二维码图片
            On Error Resume Next
            ActiveSheet.Pictures.Insert(qrUrl).Select
            On Error GoTo 0
            
            ' 设置图片的位置和大小,使其适配目标单元格
            With Selection
                .Top = targetCell.Top + 2      ' 留出2像素边距
                .Left = targetCell.Left + 2
                .ShapeRange.LockAspectRatio = msoTrue ' 锁定纵横比,防止变形
                .Height = 60                          ' 设置高度为60
            End With
        End If
    Next i
    
    MsgBox "二维码批量生成完成!", vbInformation
End Sub
相关推荐
Am-Chestnuts8 小时前
AI 对话里的表格怎么导出成 Excel 还能筛选排序?用DS随心转把数据整理成可分析表格
大数据·人工智能·excel
Metaphor6929 小时前
使用 Python 读取和删除 Excel 文件属性
python·excel
weixin_4692738113 小时前
银行流水 PDF 转 Excel 或者 CSV 完整指南
人工智能·pdf·excel
百事牛科技13 小时前
Excel部分单元格禁止修改:锁住该锁的,放开该放的
windows·excel
asdzx6715 小时前
使用 Python 为 Excel 添加各类数据验证规则
开发语言·python·excel
less_1213816 小时前
HarmonyOS WPS Open SDK:旧 HAR 迁移到统一接口联调指南
华为·sdk·harmonyos·wps·鸿蒙开发·文档编辑
足球中国17 小时前
.net DataExcel控件 2.11.1.53版发布
c#·.net·excel
程序员贺加贝17 小时前
列表导出不够用-SaaS-ERP-单据详情导出的-Provider-模板与文档型-Excel-设计
java·后端·设计模式·架构·excel
城数派18 小时前
1901-2025年中国省市县三级逐月平均气温数据(Shp/Excel格式)
excel
一晌小贪欢18 小时前
Python办公16:PDF 强力缝合——将几十个 PDF 合并为单个文档并添加页码
开发语言·python·excel·数据可视化·python办公