建议的语法是,将Declare语句与PtrSafe关键字一起使用。 包含“PtrSafe”的 Declare 语句在 32 位和 64 位的平台上的 VBA7 开发环境中正常工作,只是要在需要存储 64 位数量的“Declare”语句(参数和返回值)中的所有数据类型被更新以将LongLong用于 64 位整数,或将LongPtr用于指针和句柄。
这个属性是在VBA 7.1及更高版本中引入的,用于支持64位操作系统。 使用PtrSafe属性的目的是为了确保代码在64位系统上能够正确运行,同时避免一些由于内存布局变化导致的潜在问题。当你在声明函数或方法时使用PtrSafe属性,VBA编译器将对该函数或方法进行特定的检查,以确保它们在64位系统上是安全的。 要使用PtrSafe属性,你...
#If VBA7 Then Declare PtrSafe Sub... #Else Declare Sub... #EndIf Lors de l’exécution dans des versions 64 bits d’Office, les instructions Declare doivent inclure le mot clé PtrSafe . Le mot clé PtrSafe indique que l’instruction Declare peut être exécutée en toute sécurité dans...
请检查并更新Declare语句,然后用PtrSafe属性标记它们. 解决方法:为了兼容64位系统,需要在Declare 后面加PtrSafe 进行标记,即由原来的Declare更改为Declare PtrSafe Declare 语句 (VBA) | Microsoft Docs
最近换了新的电脑,从32位系统升级到64位系统,以前有写一个VBA (Visual Basic Application)的程序,在32位的旧电脑上是可以使用的,但是在新的64位的系统上却有以下问题, === Compile error: The code in this project must be update for use on 64-bit systems. Please review and update Declare statements...
Windows 7,Excel 2016,64位EN我正在尝试将我的大量VBA应用程序从长数据类型升级到LongLong或LongPtr,...
如果不使用此属性,那么在 64 位系统中使用 Declare 语句会导致编译时错误“。个人建议先备份Excel文件,然后在Excel中同时敲击Alt键和F11键,打开Excel VBA编辑器,然后找”Declare“,在它后面添加”PtrSafe“测试。 2、如果可以删除宏,我这建议你在Excel下同时敲击Alt;F8,或者点击”开发者工具“ > 在”代码“组,...
excel 在少数地方添加“PtrSafe”仅仅添加PtrSafe并不能使函数在64位中工作。PtrSafe只是告诉VBA,“嘿,...
第一套:VBA代码解决方案是VBA中各个知识点的讲解,教程共147讲,覆盖绝大多数的VBA知识点,提供的程序文件更是一座不可多得的代码宝库,是初学及中级人员必备教程;目前这套教程提供的版本是修订第二版,程序文件通过32位和64位两种OFFICE系统测试。 第二套:VBA数据库解决方案数据库是数据处理的专业利器,教程中详细介绍...
PtrSafe 关键字用于在 64 位 VBA 环境中标记 Declare 语句,以确保它们可以安全地运行。在 64 位版本的 Office 中,Declare 语句必须包含 PtrSafe 关键字,并且需要将所有需要存储 64 位数量的数据类型(如指针和句柄)更新为 LongPtr 或LongLong。 3. 根据 PtrSafe 的要求,更新 Declare 语句 接下来,我们将更新上述...