如何用vba判断当前使用的office、excel软件是32位还是64位?

在做Excel的解决方案时,当把产品交付给客户后,有时候会因为软件环境的不同导致的程序错误。

其中Excel软件的位数是其中一个比较常见的环境差异。

今天就让我们一起来学习下如何识别使用的Excel软件是32位还是64位?

首先操作系统的位数和Excel软件的位数要区分下,一个64位的操作系统可以安装32位或64位的Excel软件,但是一个32位的操作系统只能安装32位的Excel软件,不能安装64为的Excel软件。

比如小编的电脑操作系统是64位的。

即可以安装32位也可以安装64位的Excel软件,接下来介绍3种判断Excel软件的位数的方法。

  1. 手动查看当前的Excel软件是32位还是64位
  2. 用函数判断当前的Excel软件是32位还是64位
  3. 用vba判断当前的Excel软件是32位还是64位

一、手动查看当前的Excel软件是32位还是64位

 

在Excel中我们可以单击“文件”选项卡,单击“账户”按钮,然后单击“关于Excel”,在弹出的对话框中可以看到是32位还是64位的。
从图中可以看出小编的电脑安装的是32位的Excel软件。

二、用函数判断当前的Excel软件是32位还是64位

除了上述介绍的方法,我们还可以在任意一个Excel单元格中输入以下公式

=INFO(“OSVERSION”)

然后在小编的电脑上公式的计算结果会显示成

Windows (32-bit) NT 10.00

其中的32表示32位。

三、用vba判断当前的Excel软件是32位还是64位

上面分别介绍了手动和函数法判断当前的Excel软件是32位还是64位,如果要用vba判断,可以使用如下的代码:

Sub QQ1722187970()
    Dim sText As String
    sText = Environ("PROCESSOR_ARCHITECTURE")
    Debug.Print sText
    If sText Like "*64*" Then
        MsgBox "当前使用的是64位Excel"
    ElseIf sText Like "*86*" Then
         MsgBox "当前使用的是32位Excel"
    End If
End Sub

四、总结

本文分别介绍了用手动、函数、vba3种方法判断当前的Excel软件的位数的方法,其中用函数和VBA时,要注意的是,它们返回的结果都是针对的当前的使用软件,而不是操作系统。

比如Environ(“PROCESSOR_ARCHITECTURE”)从字面上理解返回的是处理器的位数,但是不是返回的是操作系统的处理器的位数,而是当前使用的Excel软件的,这一点要特别注意。

       

评论已关闭。