首页 > 其他分享 >vba 二维码生成

vba 二维码生成

时间:2023-07-06 19:00:18浏览次数:36  
标签:ThisWorkbook Function vba Name ByVal Long 生成 二维码 path

Private Declare PtrSafe Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare PtrSafe Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare PtrSafe 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 path As String
    path = ThisWorkbook.path & "\QR.exe"
    If Dir(path) = "" Then
        MsgBox "QRmake.exe文件丢失,请确认!", vbCritical, "外部程序调用"
        Exit Sub
    End If
    i = MK_QR("ah@###00510210325####PC#P#G54ABC001#", "100", "20")   '中间数字, 最后数字跳转大小.
End Sub

Function MK_QR(Enc_Dat, ECL, SIZ)
    Dim F_Name As String
    Dim path As String
    F_Name = "[" & ActiveWorkbook.Name & "]" & ActiveSheet.Name & "!" & ActiveCell.Address
    path = ThisWorkbook.path & "\QR.exe"
    Point01 = Shell("""" & path & Chr(34) & " /S" & SIZ & " /L" & ECL + 1 & " /O""" & ThisWorkbook.path & "\" & F_Name & ".bmp"" /T""" & Enc_Dat & """")
    Point02 = OpenProcess(&H100000, 1, Point01)
    Point03 = WaitForSingleObject(Point02, &HFFFFFFFF)
    Point03 = CloseHandle(Point02)
    Point01 = Empty
    Point02 = Empty
    Point03 = Empty
    Cells(9, 4).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

  

标签:ThisWorkbook,Function,vba,Name,ByVal,Long,生成,二维码,path
From: https://www.cnblogs.com/pythonClub/p/17533083.html

相关文章

  • 使用Mkdocs生成项目文档
    MkDocs是一个基于Python的静态站点生成器,它可以将Markdown格式的文档转换为漂亮的静态网站。MkDocs提供了一种简单而灵活的方式来创建文档,并支持多种主题和插件。下面是一个简单的示例代码,演示如何使用MkDocs创建一个文档站点:安装MkDocs可以使用pip命令安装MkDocs:pipinstall......
  • css动态生成多个class样式
    在纯CSS中,无法动态生成多个类样式。CSS是一种静态样式表语言,它主要用于描述网页上元素的外观和布局,而不能在运行时动态生成类样式。然而,你可以通过使用CSS预处理器(如Sass、Less等)或CSS-in-JS工具(如StyledComponents、Emotion等)来在一定程度上实现动态生成类样式的效果。举例来......
  • 使用Stable Diffusion生成艺术二维码
    在数字艺术的世界中,二维码已经从单纯的信息承载工具转变为可以展示艺术表达的媒介。这是通过使用StableDiffusion的技术实现的,它可以将任何二维码转化为独特的艺术作品。接下来,我们将一步步教你如何使用StableDiffusion生成艺术二维码。需要的工具你需要一款名为AUTOMATIC1111......
  • C/C++学生成绩管理系统[2023-07-06]
    C/C++学生成绩管理系统[2023-07-06]学生成绩管理系统开发一个可以管理学生成绩以及学生基本信息的一个信息系统,至少实现如下功能:信息管理,支持信息的增、删、改、查操作,具体信息类型如下:(1) 管理学生信息 ,包括学号,姓名,年龄,班级等等信息。(2) 班级信息,包括班级编号、班级人数,......
  • 如何使用Arduino创建摩尔斯电码生成器
    摩尔斯电码工作原理摩尔斯电码发明于19世纪,使用非常简单的长短脉冲序列(通常为电和划)来远距离发送消息。通过将字母表中的字母编码为电和划的组合,信息可以只用一个单一的电子或声音信号来表达。为了说明这是如何工作的,我们将使用一个简单的蜂鸣器将文本转换为可听的摩尔斯电码信......
  • vue生成二维码图片并且下载图片到本地
    一、安装生成二维码插件qrcode.jsnpminstall--saveqrcodejs2二、封装组件<template><div><divid="qrcode"></div></div></template><script>//二维码importQRCodefrom'qrcodejs2'......
  • 使用sphinx生成项目文档
    Sphinx是一个基于Python的文档生成工具,它可以将标记文本转换为各种格式的文档,包括HTML、PDF、EPUB等。Sphinx最初是为Python文档而开发的,但是它也可以用于其他类型的文档,例如API文档、技术文档、用户手册等。Sphinx的主要特点包括:支持多种标记语言,包括reStructuredText、Markdo......
  • 使用html2canvas生成网页截图并下载
    1.安装依赖npminstallhtml2canvas--save2.引入依赖importhtml2canvasfrom"html2canvas";3.使用示例<template><div><a@click="toImage()">下载</a><divref="imageTofile"> 要截屏的控件内容</div>&......
  • 前端Vue自定义顶部导航栏navBar 导航栏搜索框searchBar 导航栏右侧菜单按钮button
    前端Vue自定义顶部导航栏navBar导航栏搜索框searchBar导航栏右侧菜单按钮button,下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=13342效果图如下:cc-headerSearch使用方法<!--icon:右侧菜单图标@searchClick:搜索点击 @rigIconClick:右......
  • Linux随机生成数
    简介在某些情况下,我们需要随机产生一个数来在一些场景中使用,例如验证码、ssh反向代理随机数的产生,又或者在一些shell脚本设计中需要用到随机数,这里介绍常用几个linux产生随机数的方法。使用shufshuf命令在一些Linux系统中是自带的,但并不是所有系统都包含该命令。在Ubuntu......