VBA纯代码制作二维码
●主要两部分,第一是保存Dll ,第二是调用核心模块
●
●
●把下面相应代码复制到相应模块,即可单个/或批量生成二维码
‘把上面的dll保存,在VBA工具----引用界面引用该Dll,调用直接执行下面模块过程即可生成二维码(按A列数据生成二维码/可批量)
Sub 清除()
Dim pic As Shape
With Sheet1
For Each pic In .Shapes
If pic.Type = msoPicture Then pic.Delete '删除sheet1中所有二维码图片
Next pic
End With
End Sub
'*********************重点再此*************************************
Sub 二维码简化()
Dim QR$, s$, ss$, i&
Application.ScreenUpdating = False
Call 清除 '执行程序,清除已有二维码
With Sheet1
For rrow = 2 To Worksheets(1).Cells(Rows.Count, 1).End(xlUp).Row
If Range("a" & rrow) <> "" Then
Call QRMain(Range("a" & rrow)) '生成二维码核心语句
Call CreateBitmapQRCode(RGB(0, 0, 0), RGB(255, 255, 255)) '设置二维码颜
Call QRCodeToClipboard
.Range("b" & rrow).Select '选中粘贴位置
.Rows(rrow).RowHeight = 93 '将粘贴图片的单元格调整尺寸,为了适合二维码放置
.Columns(2).ColumnWidth = 14.75
.Paste '粘贴剪切板内的图片
Application.CutCopyMode = False
With Selection '图片是唯一的,设置图片:位置和大小
.ShapeRange.Height = Range("a" & rrow).Offset(0, 1).Height
.ShapeRange.Width = Range("a" & rrow).Offset(0, 1).Width
.ShapeRange.Left = Sheet1.Range("b" & rrow).Left + (Sheet1.Range("b" & rrow).Width - .Width) / 2 + 1
.ShapeRange.Top = Sheet1.Range("b" & rrow).Top + (Sheet1.Range("b" & rrow).Height - .Height) / 2 + 1
End With
Else
End If
Next
End With
'Call 拍照
Application.ScreenUpdating = True
如何制作二维码
End Sub
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论