2012-04-19 2 views
1

Office 2010の32ビット版と64ビット版があります。2010 Office 32ビットマシン用にVSTO 2をインストールし、2010 Office用64ビット版VSTO 4をインストールする必要がある場合対応するビットのオフィスバージョンを検出するVBA

Public Function checkbitversion() As Variant 
#If VBA7 Then 
    checkbitversion = "64" 
#Else 
    checkbitversion = "32" 
#End If 
End Function 

ただし、すべてのマシンで常に32ビットとなります。私はこの問題を克服するために助けが必要です。

は、私は、次のMSDNの記事を参照してください:\ http://msdn.microsoft.com/en-us/library/ff700513%28v=office.11%29.aspx

+0

http://stackoverflow.com/questions/896645/how-to-check-ms-office-version-installed-on-the-machines? – Fionnuala

+0

'VBA7'を定数としてコンパイルしていますか? – JimmyPena

答えて

0

チェックのMicrosoft \ Officeの\バージョンのHKEY_LOCAL_MACHINE \ SOFTWARE \内のbitness値展望

バージョンは、上記のOutlookのバージョンに応じて、14.0または15.0である

0

HEREから2番目のフォーラム投稿から、このコードを試してみてください。それはそれがそうでなければ、それは彼の記述ごとに、32ビットで、64ビットである何かを返す場合

Function Is64bit() As Boolean 
Is64bit = Len(Environ("ProgramW6432")) > 0 
End Function 

彼はThe logic seems to be if that environment variable returns anything or not, as that parameter probably doesn't exist in the 32-bit version.

を言います。

関連する問題