Excel VBA自定义模板(Label)标签生成工具

2023-03-02 13:22:19 浏览数 (2)

最近做了一个Excel VBA自定义模板(Label)标签生成小工具,本工具可以根据自己的喜好,在Excel表中定义好一个模板,即可以根据自己定义的模板生成响应的卡片文档样式; "https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqz8cAUZjQ71Gn2DlWUlmNP1OupnibB3HGxGI0P0qxIKIZhky9DicfTdcGvk2UEoLhWwHEbjTZDJBk0WVOrJrHJo9fA&adaptivelytrans=0&bizid=1023&dotrans=0&hy=SH&idx=1&m=&scene=0&token=x5Y29zUxcibBpFUSb3BhsEHJkaTQFIP0yhxMrvoKt5UA4LdZQUj4KzMp2zBYTbrPkrDfOLdkeo2Y"

VBA实现原理过程:

1.获取定义的标签模板范围

2.拾取标签数据表的数据

3.然后复制粘贴,标签范围的内容,到新的表里面

4.然后替换,复制到新表有{{}}标题的内容,遇到QR:标记的单元格时,先替换后生成二维码

5.调整新表内容的行高列宽(注意直接粘贴,是没有行号和列宽的)

6.经过以上几步,即可实现上述视频的效果

模板制作注意事项:

1.标签数据表,必须包含,不重复的表头列

2.模板中需要替换,为数据表字段的数据字段 {{数据表的字段}} ,比如 {{姓名}} 则生成的标签,会替换成 姓名 列的数据

3.需要生成二维码的单元格,只要在 {{数据表字段}} 前,加上 QR: 即可;比如 QR:{{姓名}} {{学号}},那么标签生成的二维码内容就是: 张三 20221007

部分代码凑个字数:

代码语言:javascript复制
''删除和新建表
Function DeleteAndCreateNewSheet() As Worksheet
    Dim Sht As Worksheet, newshtname As String
    newshtname = "标签生成页"
    For Each Sht In ThisWorkbook.Worksheets  ''删除旧表
        If Sht.Name = newshtname Then
            Application.DisplayAlerts = False
            Sht.Delete
            Application.DisplayAlerts = True
        End If
        DoEvents
    Next
    '----------
    ThisWorkbook.Worksheets.Add.Name = newshtname ''添加新表
    Dim newsht As Worksheet: Set newsht = ThisWorkbook.Worksheets(newshtname)
    Set DeleteAndCreateNewSheet = newsht
End Function

工具下载地址:

代码语言:javascript复制
链接:https://pan.baidu.com/s/1l53o81W2QjN-i-eVlrEv5Q?pwd=aphu 
提取码:aphu 
vba

0 人点赞