Access 或Excel VBA判断当前Office版本是32位Office还是64位Office的四种方法

2014-04-17 11:28:24
admin-Office交流网
原创
5113
Access 或Excel VBA判断当前Office版本是32位Office还是64位Office的四种方法
整理:Office中国 admin


以下 方法同时适应于Access 以及 Exccel VBA

现在使用4G及以上内存的电脑越来越多,64位windows及64位Office也成为大家首选. Access excel office也将迎来64位的转换
如果使你的程序同时适应32位和64位呢,需要在程序中进行判断

Office中国整理了多种方法让你来判断是否32位Office 还是64位Office


如果需要判断 windows 版本是 32位或64位,可参考以下这篇文章:

http://www.office-cn.net/access-function/144.html


一. 检查是否64位Access方法一
  1. Function gf_ChkIs64bit() As Boolean
  2.     gf_ChkIs64bit= Len(Environ("ProgramW6432")) > 0
  3. End Function

二.检查是否64位Access/64位Office方法二
  1. Sub gf_Chk64BitOffice()
  2. Dim bIs64Bit As Boolean
  3. #If win64 Then
  4.     bIs64Bit = True
  5. #End If
  6. MsgBox "这是64位Office/Access: " & bIs64Bit
  7. End Sub

三. 检查是否64位Excel方法三
  1. Private Function m_IsExcelx64(ExcelApp As Object) As Boolean
  2.     Dim l As Long

  3.     l = -1
  4.     On Error Resume Next
  5.     l = ExcelApp.hInstance
  6.     On Error GoTo 0

  7.     If l = -1 Then
  8.           m_IsExcelx64 = True
  9.     Else
  10.           m_IsExcelx64 = False
  11.     End If
  12. End Function

四.检查是否64位Office方法四
  1. Private Function IsOfficex64() As Boolean
  2.         Dim result As Boolean = False

  3.         Dim productKey As String = _application.ProductCode

  4.         If String.Equals("1", productKey.Substring(20, 1), StringComparison.InvariantCulture) Then
  5.           result = True
  6.         End If

  7.         Return result
  8. End Function

还有一种更快 更好的方法, 想不想知道:)
直接打开Office access excel ,在帮助关于里看看是否64位:)  哈哈,看到这个内容的人估计都上当了



分享