zoukankan      html  css  js  c++  java
  • 如何判断Office是32位还是64位?

    对于持续学习VBA的老铁们,有必要了解Office的位数。

    如果系统是32位的,则不需要判断Office位数了,因为只能安装32位Office。

    下面只讨论64位系统中,Office的位数判断问题。

    64位系统中可能存在以下4种情况:

    • 安装了32位Office
    • 安装了64位Office
    • 安装了32位和64位两个版本Office
    • 没安装任何Office

    究竟Office是多少位的?如果不打开Office以及VBA,通过注册表可能能够查询出来,不过比较费事儿,而且注册表也有被修改的可能,靠不住。

    下面介绍打开了Office的一个组件,或者打开了VBA编程环境后,查看位数的方法。

    方法一:手动查看法

    找到账户(Account)选项,然后点击关于Excel

    下面的对话框中,看一下最上面的那行字,写的是64bit。

     

    方法二:VBA法

    该方法还可以分为以下n多种方法

    方法2-1:根据ProductCode属性

    如果结果是四个0,后面又四个0,则是32位Office。 如果后面是1000,则是64位Office

    方法2-2:根据HInstance属性

    32位Office的情形,可以返回一个整数。

     64位Office的情形,返回的是致命的错误。

    方法2-3:声明LongLong类型变量

    在64位Office的VBA中可以声明LongLong类型的整型变量

    在32位Office的VBA里面,只有Long。

    方法2-4:根据API函数的颜色

    在模块顶部加入一个最简单的API函数声明,64位Office的情况下函数呈现为红色。

    32位Office的话,以上代码直接显示为黑色,而且不报错。

    方法2-5:条件编译法

    在VBA模块中运行如下过程,看看返回的是哪一个对话框。

    Sub 判断Office位数()
        #If Win64 Then
            MsgBox "64bit"
        #Else
            MsgBox "32bit"
        #End If
    End Sub

    以上各种方法都亲测好使,感谢老铁们继续支持。

  • 相关阅读:
    分布式文档存储数据库 MongoDB
    MongoDB运行状态、性能监控,分析
    Mongodb在Linux下的安装和启动和配置
    mongodb 状态监控命令详解
    Asp.net Core 入门实战 2.请求流程
    Asp.net Core 入门实战
    前后端分离之CORS和WebApi
    2.CLI标准
    JavaScript的引入方式
    CSS选择器的优先级
  • 原文地址:https://www.cnblogs.com/ryueifu-VBA/p/12316742.html
Copyright © 2011-2022 走看看