EXCEL生成二维码怎么固定二维码大小?输入excel固定单元格大小无值时二维码也自动清空

查看: 5494|回复: 31
用宏命令批量生成二维码
阅读权限20
在线时间 小时
本帖最后由 lsc900707 于
17:18 编辑
宏.png (20.64 KB, 下载次数: 39)
15:25 上传
如图所示,我是使用QRmake来生成二维码,按钮做好以后发现我每次生成二维码必须先选中二维码下方的数字,按下按钮后才能生成二维码,并且只能单独操作,不能进行批量操作。我现在的需求是我按下按钮,所有的二维码能够一次性生成,求大神帮忙下,需要生成二维码的数字是引用另外一个工作表的:
=IF(MOD(ROW(A1),8)=1,OFFSET(排产单!AH$3,CEILING(ROW(A1)/8,1),0)&&&,&&)
宏命令如下:
Private Declare Function OpenProcess Lib &kernel32& (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function WaitForSingleObject Lib &kernel32& (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare Function CloseHandle Lib &kernel32& (ByVal hObject As Long) As Long
Private Point01 As Long, Point02 As Long, Point03 As Long
Private i As Integer
Sub MakeQRCode()
& & If Dir(&D:\QRmake.exe&) = && Then
& && &&&MsgBox &QRmake.exe文件丢失,请确认!&, vbCritical, &外部程序调用&
& && &&&Exit Sub
& & End If
& & i = MK_QR(ActiveCell.Value, &10&, &4&)
Function MK_QR(Enc_Dat, ECL, SIZ)
& & Dim F_Name As String
& & F_Name = &[& & ActiveWorkbook.Name & &]& & ActiveSheet.Name & &!& & ActiveCell.Address
& & Point01 = Shell(&&&& & &D:\QRmake.exe&&& & & /S& & SIZ & & /L& & ECL + 1 & & /O&&& & ThisWorkbook.Path & &\& & F_Name & &.bmp&& /T&&& & Enc_Dat & &&&&)
& & Point02 = OpenProcess(&H, Point01)
& & Point03 = WaitForSingleObject(Point02, &HFFFFFFFF)
& & Point03 = CloseHandle(Point02)
& & Point01 = Empty
& & Point02 = Empty
& & Point03 = Empty
& & ActiveCell.Offset(-4, 0).Select
& & With ActiveSheet.Pictures.Insert(ThisWorkbook.Path & &\& & F_Name & &.bmp&)
& && &&&.Left = ActiveCell.Left
& && &&&.Top = ActiveCell.Top
& & End With
& & '将已经生成的二维码图像删除
& & Kill (ThisWorkbook.Path & &\& & F_Name & &.bmp&)
& & ActiveCell.Offset(0, -1).Select
End Function
16:10 上传
点击文件名下载附件
469.12 KB, 下载次数: 292
阅读权限20
在线时间 小时
自顶下。。求大佬帮一下忙。。拜谢
阅读权限90
在线时间 小时
Sub MakeQRCode()
& & If Dir(&D:\QRmake.exe&) = && Then
& && &&&MsgBox &QRmake.exe文件丢失,请确认!&, vbCritical, &外部程序调用&
& && &&&Exit Sub
& & End If
& & For k = 1 To 10000
& && &&&i = MK_QR(Cells(7 + 8 * (k - 1), 6), &10&, &4&)
& & Next k
阅读权限20
在线时间 小时
自顶下。。求大佬帮一下忙。。拜谢
批量生成二维码
代码如下,请看以下代码中涂颜色的部分,就不上附件了
Private Declare Function OpenProcess Lib &kernel32& (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function WaitForSingleObject Lib &kernel32& (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare Function CloseHandle Lib &kernel32& (ByVal hObject As Long) As Long
Private Point01 As Long, Point02 As Long, Point03 As Long
Private i As Integer
Sub MakeQRCode()
Dim k%, r%, Shp As Shape&&'声明相关变量
Application.ScreenUpdating = False&&'禁止屏幕刷新
& & If Dir(&D:\QRmake.exe&) = && Then
& && &&&MsgBox &QRmake.exe文件丢失,请确认!&, vbCritical, &外部程序调用&
& && &&&Exit Sub
& & End If
& & With Sheet1
& && &&&For Each Shp In .Shapes '在所有图形中遍历
& && && && &If Shp.Type = 11 Then Shp.Delete&&'删除之前已生成的二维码图片
& && &&&Next Shp
& && &&&On Error Resume Next
& && &&&r = .Range(&A& & .Cells(Rows.Count, 1).End(xlUp).Row) '在A列最后一个非空单元格的值中循环
& && &&&If Err && 0 Then MsgBox &请检查在A列最后一个非空单元格的值有错误值!&, 16, &错误提示&: Exit Sub
& && &&&For k = 1 To r& &'循环进行批量生成二维码图片
& && && && &.Cells(7 + 8 * (k - 1), 6).Select&&'选择需要生成二维码的数字的单元格
& && && && &i = MK_QR(.Cells(7 + 8 * (k - 1), 6), &10&, &4&)
& && &&&Next k
& & End With
& & MsgBox &批量生成二维码已完成!& & Chr(13) & && &&&共生成 & & k - 1 & &个&, , &提示&
Application.ScreenUpdating = True&&'启动屏幕刷新
Function MK_QR(Enc_Dat, ECL, SIZ)
& & Dim F_Name As String
& & F_Name = &[& & ActiveWorkbook.Name & &]& & ActiveSheet.Name & &!& & ActiveCell.Address
& & Point01 = Shell(&&&& & &D:\QRmake.exe&&& & & /S& & SIZ & & /L& & ECL + 1 & & /O&&& & ThisWorkbook.Path & &\& & F_Name & &.bmp&& /T&&& & Enc_Dat & &&&&)
& & Point02 = OpenProcess(&H, Point01)
& & Point03 = WaitForSingleObject(Point02, &HFFFFFFFF)
& & Point03 = CloseHandle(Point02)
& & Point01 = Empty
& & Point02 = Empty
& & Point03 = Empty
& & ActiveCell.Offset(-4, 0).Select
& & With ActiveSheet.Pictures.Insert(ThisWorkbook.Path & &\& & F_Name & &.bmp&)
& && &&&.Left = ActiveCell.Left
& && &&&.Top = ActiveCell.Top
& & End With
& & Kill (ThisWorkbook.Path & &\& & F_Name & &.bmp&) '将已经生成的二维码图像删除
& & 'ActiveCell.Offset(0, -1).Select&&'此句可删除
End Function
阅读权限20
在线时间 小时
批量生成二维码
代码如下,请看以下代码中涂颜色的部分,就不上附件了
您好,非常感谢您的帮助,我现在还有个小问题,你代码中是在A列最后一个非空单元格值中循环,而我表格内数据是要在别的表格内引用的,在下方肯定会有长串空的单元格出现。这样的情况我应该如何修改代码,谢谢!
阅读权限20
在线时间 小时
kongque.png (29.2 KB, 下载次数: 2)
09:48 上传
如图所示。
阅读权限20
在线时间 小时
本帖最后由 jiaxinl 于
10:24 编辑
new2654149 发表于
如图所示。
你A列中不是用公式编好序号了吗?
只要你A列中排序号的公式不出错就行
其实你I列也是等于A列中编好的序号吗
你编好的序号其实就是要批量生成二维码的个数
我发的代码你可以直接拿来用,不用再修改
只要你A列中排序号的公式不出错就行
阅读权限20
在线时间 小时
你A列中不是用公式编好序号了吗?
只要你A列中排序号的公式不出错就行
其实你I列也是等于A列中编好的 ...
实际情况是如果我不把空表格删除的话,还是会有错误提醒
阅读权限20
在线时间 小时
本帖最后由 jiaxinl 于
10:40 编辑
new2654149 发表于
实际情况是如果我不把空表格删除的话,还是会有错误提醒
有可能是你A列中非空单元格的下面的单元格中有可以存在空格或其他不可见的字符(这样的单元格属于假空)
进行测试A列是否存在假空的单元格
你可以先选择A列,然后按Ctrl+G 定位
定位条件&&选择空值
你可以把A列改为I列试试看会不会出现错误提示
&&r = .Range(&A& & .Cells(Rows.Count, 1).End(xlUp).Row) '在A列最后一个非空单元格的值中循环
r = .Range(&I& & .Cells(Rows.Count, 9).End(xlUp).Row) '在I列最后一个非空单元格的值中循环
阅读权限20
在线时间 小时
有可能是你A列中非空单元格的下面的单元格中有可以存在空格或其他不可见的字符(这样的单元格属于假空)
我检查了下前面都是对的
到这一行就不对了我只要把这一行后面的删了,才能够不出现问题,改成I列也没有用的
cuowu.png (14.99 KB, 下载次数: 0)
10:59 上传
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师电脑〗『求助』关于在Excel里自动生成二维码_百度知道
电脑〗『求助』关于在Excel里自动生成二维码
我有更好的答案
想根据信息自动生成二维码?最简单的就是在电子表格中超链接到二维码在线生成页。然后把生成的二维码插入到表格中。很方便的。如图:
采纳率:46%
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。excel表格生成二维码的方法
excel表格生成二维码的方法
学习啦【Excel表格】 业华
  我们用EXCEL可以实现很多数据的统计和运算,可以说EXCEL就是万能的,今天我们来学习一下EXCEL是如何制作二维码的。下面是学习啦小编带来的关于excel表格生成二维码的方法,希望阅读过后对你有所启发!
  excel表格生成二维码的方法:
  生成二维码步骤1:新建一张表格,选择A1,在A1中输入条码内容:AP。
  生成二维码步骤2:单击&&视图&&工具栏&&控件工具箱,打开对话框,点击&其它控件&,在空间列表中选择Microsoft Barcode Control 9.0.
  生成二维码步骤3:按住十字箭头,在空白区域拖出一个矩形,松手后就出现了二维码,右键二维码图像,选择Microsoft Barcode Control 9.0对象&&属性,打开对话框,在&常规&&&&样式&中选择&6-Code-39&,单击确定。
  生成二维码步骤4:右键二维码图像,选择&属性&,打开属性对话框,设置&LinkedCell&为A1单元格,关闭属性对话框,单击空间工具箱中的&退&,退出设计模式,二维码就制作完成了。
看了excel表格生成二维码的方法还看了:
[excel表格生成二维码的方法]相关的文章
【Excel表格】图文推荐EXCEL 怎么设置可以让单元格扫二维码后自动在固定两列从左到右,从上到下自动切换单元格_百度知道
EXCEL 怎么设置可以让单元格扫二维码后自动在固定两列从左到右,从上到下自动切换单元格
怎么设置可以让单元格扫二维码后自动在固定两列从左到右,从上到下自动切换单元格,如:在A1扫二维码后自动切换到B1,,B1扫码后自动切换到A2,而不是切换到C1,A2扫码后自动切换到B2,B2扫码后自动切换到A3
A3扫码后自动切换到B3,以此类推,请高手指...
我有更好的答案
在格式菜单--&单元格格式--&对齐选项卡怎么排列都可以,自己去感受吧.
采纳率:75%
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 excel固定单元格大小 的文章

 

随机推荐