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

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

  • 相关阅读:
    通过点击切换文本框内容的脚本示例
    使用脚本改变树控件的行为
    javascript动态创建radio button元素支持IE/Firefox
    轻量级的向导控件MultiView
    客户端脚本简单实现Repeater的无刷新分页
    在非web site项目中引用Membership
    逐步认识C#四种判断相等的方法
    C#获取csv文件内容对逗号和引号分隔的处理
    JavaScript之 值类型 和 引用类型 Better
    JS call apply bind 方法的区别 Better
  • 原文地址:https://www.cnblogs.com/ryueifu-VBA/p/12316742.html
Copyright © 2011-2022 走看看