如何判斷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

 

以上各種方法都親測好使,感謝老鐵們繼續支持。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM