VBA 32位代码适配64位

2023-11-01

     很久前用 Access VBA 写个程序,在64位的 Office 下一直报错,遂一直用 32位的 Office。最近尝试安装了 Office 2021,看到那图标那界面顿时爱了。一时没有找到 32位 的 Office 2021,遂决定解决代码的适配问题,好一劳永逸。

1)在操作具体模块时,弹出“Microsoft Visual Basic for Applications”窗口,报:

     隐藏的模块中的编译错误:mod_openFile。
     此错误通常会在代码与此应用程序的版本、平台或基础结构不兼容时发生。单击“帮助”以获取如何更正此错逞的信息。


2)进入名称为“mod_openFile”模块(个人自定义的),相关代码红色显示(32位 Office正常),报:

      编译错误:
      若要在64位系统上使用,则必须更新此项目中的代码。请检查并更新 Declare 语句,然后用 PtrSafe 属性标记它们。

3)解决方法确实很简单,只需在 Declare 后加上 PtrSafe即可

'原代码段
    Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    Public Declare Function SetCursor Lib "user32" (ByVal hCursor As Long) As Long
    Public Declare Function LoadCursorByNum Lib "user32" Alias "LoadCursorA" (ByVal hInstance As Long, ByVal lpCursorName As Long) As Long
'更新后代码段
    Public Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    Public Declare PtrSafe Function SetCursor Lib "user32" (ByVal hCursor As Long) As Long
    Public Declare PtrSafe Function LoadCursorByNum Lib "user32" Alias "LoadCursorA" (ByVal hInstance As Long, ByVal lpCursorName As Long) As Long

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VBA 32位代码适配64位 的相关文章

  • TortoiseGit和Git如何使用相同的密钥

    Git密钥配置 TortoiseGit密钥配置 TortoiseGit和Git密钥配置图文教程 TortoiseGit和Git如何使用相同的密钥 使用 TortoiseGit 的 PuTTYgen 生成的私钥和使用Git的 ssh keyg
  • GVIM配置文件

    给大家分享一下我的vim的配置文件 关闭兼容模式 set nocompatible 模仿快捷键 如Ctrl A全选 Ctrl C复制等 source VIMRUNTIME vimrc example vim source VIMRUNTIM
  • 【c++】指针

    目录 1 1指针的基本概念 1 2指针变量的定义和使用 1 3指针所占内存空间 1 4空指针和野指针 1 5const修饰指针 1 6指针和数组 1 7指针和函数 1 8指针 数组 函数 1 1指针的基本概念 作用 可以通过指针间接访问内存
  • 使用Selenium和Python自动预订车票

    在本文中 我们将探讨如何使用Selenium和Python自动预订车票 我们将以12306 cn网站为例 演示自动化预订车票的过程 通过阅读本文 您将更好地了解如何使用Selenium与网页进行交互 准备工作 首先 我们需要安装Seleni
  • 信息学奥赛一本通(C++版)

    信息学奥赛一本通 C 版 总目录 1 信息学奥赛一本通 C 版 刷题 记录 2 信息学奥赛一本通 C 版 第一部分 C 语言 第一章 C 语言入门 3 信息学奥赛一本通 C 版 第一部分 C 语言 第二章 顺序结构程序设计 4 信息学奥赛一
  • sqlmap -u -r参数的使用

    SQLMAP基本使用实例 u参数 直接输入目标URL 命令实例 sqlmap u http 127 0 0 1 sql Less 1 id 1 验证过程 判断可注入的参数 判断可以用哪种SQL注入技术来注入 识别出所有存在的注入类型 尝试去
  • hbase compaction

    minor compaction 删除TTL过期数据 major compaction 被删除的数据 打了Delete标记的数据 TTL过期数据 版本号超过设定版本号的数据 Minor Compaction 指选取一些小的 相邻的HFile
  • 20个解决日常问题的Python代码片段

    在本文中 将分享20 个 Python 代码片段 以帮助你应对日常编程挑战 你可能已经知道其中一些片段 但有些其他片段对你来说可能是新的 赶紧使用这些有用的 Python 代码片段提升你的编程技能吧 1 简单的 HTTP Web 服务器 简
  • CSS 布局(一)

    到目前为止 我们已经了解了CSS基础知识 如何设置文本样式 以及如何设置和操作内容所在的框 现在是时候看看如何根据视口以及彼此之间的关系正确地安排你的盒子了 我们已经介绍了必要的先决条件 所以让我们深入了解CSS布局 查看各种功能 不同的显
  • 接上一篇 对多个模型环形旋转进行优化 指定旋转位置

    using System Collections using System Collections Generic using UnityEngine using DG Tweening public class ModelAnimal M
  • Vue全局日期格式化(过滤器式)

    设置 main js文件下 全局日期时间过滤器 Vue filter dateFormat function v let date new Date v if Number isNaN Number date date new Date l
  • 问答专场

    作为一名产品经理 或许你刚刚进入某个领域 或许你在为管理头疼 或许你在为创业辗转 或许你还不知如何拥抱移动互联网 那么 我们来聊聊吧 本期PMCAFF 问答专场 邀请到阿里巴巴无线创始人 费杰 擅长领域 创业 管理 电商 供应链 移动互联网
  • javascript--BOM(browser object model)五大对象

    浏览器对象模型 作用 访问 控制 修改浏览器 与浏览器进行交互 打开新的窗口 回退历史记录 获取url BOM与的DOM区别 JS通过BOM与浏览器进行交互 BOM的window对象包含了document对象 document对象是DOM的
  • JavaScript教程-空值合并运算符 ‘??‘优先级,循环,while,for,for...of..,for..in,do...while循环,跳出循环,break,continue

    空值合并运算符 最近新增的特性 这是一个最近添加到 JavaScript 的特性 旧式浏览器可能需要 polyfills 空值合并运算符 nullish coalescing operator 的写法为两个问号 由于它对待 null 和 u
  • 《深入理解计算机系统》实验二Bomb Lab下载和官方文档机翻

    前言 深入理解计算机系统 官网 http csapp cs cmu edu 3e labs html 该篇文章是实验二Bomb Lab的Writeup机翻 原文 http csapp cs cmu edu 3e bomblab pdf 阅读
  • 各种开源协议对比

    开源协议允许对比 Name Commercial use Modification Distribution Private use Patent use BSD Zero Clause License Academic Free Lice
  • 史上最详细mybatis与spring整合教程

    点击上方 田守枝的技术博客 关注我 mybatis本身使用比较灵活 和spring整合也有多种方式 本文一网打尽mybatis与spring整合所有方式 让你彻底掌握mybatis与spring整合原理 堪称史上最全面的mybatis与sp
  • java试题

    题目 下列程序会输出什么结果 E class Super public int getLength return 4 public class Sub extends Super public long getLength return 5

随机推荐

  • STM32F207 USART+DMA代码+个人理解

    环境 STM32F207 目的USART通过DMA通信 DMA初步理解 1 之前发送数据的方式 数据放到串口数据寄存器里面 等待一个字节发送完成 重复第一二步 看到我们平时的方式我们就会有个想法 如果我们发送五百个字节 我们就需要让CPU在
  • zookeeper源码(01)集群启动

    本文介绍一下zookeeper 3 5 7集群安装 解压安装 tar zxf apache zookeeper 3 5 7 bin tar gz 创建数据 日志目录 mv apache zookeeper 3 5 7 bin app zoo
  • shell 中函数function()

    Shell函数类似于Shell脚本 里面存放了一系列的指令 不过Shell的函数存在于内存 而不是硬盘文件 所以速度很快 另外 Shell还能对函数进行预处理 所以函数的启动比脚本更快 1 函数定义 function 函数名 语句 retu
  • 【陕西理工大学-数学软件实训】数学实验报告(8)(数值微积分与方程数值求解)

    目录 一 实验目的 二 实验要求 三 实验内容与结果 四 实验心得 一 实验目的 1 掌握求数值导数和数值积分的方法 2 掌握代数方程数值求解的方法 3 掌握常微分方程数值求解的方法 二 实验要求 1 根据实验内容 编写相应的MATLAB程
  • Hadoop学习——MapReduce的组件及简单API(一)

    上一篇参考Hadoop学习 MapReduce的简单介绍及执行步骤 MapReduce的组件 组件是实现MapReduce的真正干活的东西 即我们的业务逻辑 就是要写到这里边来的 MapReduce共有4个组件 一 Mapper组件 介绍
  • Neo4j学习笔记(二) SpringMVC中使用Spring Data Neo4j

    目录 一 pom xml中添加spring data neo4j依赖 二 数据库连接配置文件neo4j properties 三 日志打开Cypher的DEBUG信息 便于调试 四 JAVA代码 4 1 Neo4jConfiguration
  • 百度文库副业项目,适合新手,后期躺赚

    前几天帮朋友找资料 费尽周折 最后在百度文库中找到了 但需要付费 百度文库 我之前有关注过 但没真正把它作为项目来操作 通过这几天的研究 发现做百度文库还蛮赚钱的 有的文库资料是几年前上传的 现在还在赚钱 这真是个躺赚的好项目 那么 下面浩
  • JDBC连接多个库进行数据操作(常用于数据迁移)

    package turnOverClass import java lang reflect Method import java sql Connection import java sql DriverManager import ja
  • 携程笔试2021.09.09

    三道编程 第一题 AC 类似于linux系统下 文件路径的前进和后退以及输出当前路径的指令 思路 直接模拟就可以 不过每一行用的nextInt 和next 接收数据的时候需要注意用nextLine 把回车吃掉 输入 7 cd a cd b
  • Git 安装以及使用教程

    1 Git简介 Git是一个开源的分布式版本控制系统 可以有效 高速的处理从很小到非常大的项目版本管理1 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件 2 Git工作示意图
  • Kettle部署集群

    环境 1台Windows主机 2台Linux服务器 软件版本 Kettle7 0 目的 搭建Kettle集群 过程 1 安装Kettle Kettle程序整合了Linux平台和Windows平台 所以直接解压官网文件到磁盘上就OK啦 2 设
  • Android studio -- java.lang.nullpointerexception(no error message)

    Android Studio若出现 java lang nullpointerexception no error message 则删掉工程下的 gradle文件夹 重启Android Studio 问题解决 详细解答地址 http st
  • MySQL学习之DML语言

    MySQL学习之DML语言 DML SELECT完整语法 创建User 表 单表查询 保留关键字 查询空值 AND多条件查询 OR 多条件查询 DISTINCT 查询结果排序 分组查询 LIMIT 关键字 连接查询 DML 数据操纵语言DM
  • 【现代密码学原理】——期末复习(冲刺篇)

    前言 快考试了 做篇期末总结 都是重点与必考点 博主预测考点 计算题 RSA Diffie Hellman密钥交换 EIGamal 密钥交换 使用SHA 512算法 计算消息的Hash值 计算消息的HMAC 应用题 代替技术 1 2个 置换
  • Flutter升级后在Android studio上提示卡顿

    背景 32g台式机内存 amd 2700cpu 但是在Android studio上进行flutter 代码依旧感觉到卡顿 卸载重装了两次 依旧卡顿 无奈转vscode 奈何vscode用得还是效率不够高 经过某次搜索 尝试后 便记录之 举
  • 使用Python的win32com库实现对PowerPoint的操作

    使用Python的win32com库实现对PowerPoint的操作 1 引言 PowerPoint是微软公司开发的一款流行的演示文稿软件 广泛应用于演讲 培训和商务展示等场景 win32com库是Python的一个扩展模块 可以用于操作W
  • 置信区间与预测区间

    作者记录方便查询 置信区间 学习过程中 在计算置信度与置信区间的时候 所估计的变量常常是总体的某个参数 均值 方差等等 这时的已知条件一般为样本 通常还有总体分布 未知的 也是需要估计的是总体参数 因为仅仅估计某一个点的准确度不够 所以使用
  • 染色日志是怎么实现的?

    底层的rpc框架实现的 其实就是给每一次请求的源头处 加上一个seqence id id内容可以是qq号 时间戳 随机数 每次记日志的时候 都打把seqence id打出来 rpc调用的时候 由于跨机器了 需要在rpc消息中把这个seqen
  • 【期末复习】多媒体技术

    参考博客 多媒体技术期末复习题 多媒体信息技术 复习思考题 考试重点 1 JPEG压缩编码算法实现步骤 2 APCM DPCM ADPCM的区别 3 哈夫曼编码计算 画哈夫曼树 计算码长 4 颜色空间转换 RGB与CMY 还是YUV 之间
  • VBA 32位代码适配64位

    很久前用 Access VBA 写个程序 在64位的 Office 下一直报错 遂一直用 32位的 Office 最近尝试安装了 Office 2021 看到那图标那界面顿时爱了 一时没有找到 32位 的 Office 2021 遂决定解决