Office関連

64ビット環境かどうかを判別するVBAマクロ

2年以上前にMicrosoft Community(当時はMicrosoft Answers)で回答したときのコードです。

・ExcelでWin7_32bitOSか64bitOSを判断
http://answers.microsoft.com/thread/951ca707-4eb1-4751-8050-a2968e3cd788

忘れないように記事として残しておくことにします。

Public Sub Sample1()
  Dim colItems As Object
  Dim itm As Object
 
  Set colItems = CreateObject("WbemScripting.SWbemLocator").ConnectServer.ExecQuery("Select * From Win32_OperatingSystem")
  For Each itm In colItems
    Debug.Print itm.OSArchitecture
    Exit For
  Next
End Sub

・結果1:

  1. Windows 7(x64) + Office 2010(x86):64 ビット
  2. Windows Server 2008 R2(x64) + Office 2010(x64):64 ビット
Public Sub Sample2()
  Debug.Print Application.OperatingSystem
End Sub

・結果2:

  1. Windows 7(x64) + Office 2010(x86):Windows (32-bit) NT 6.01
  2. Windows Server 2008 R2(x64) + Office 2010(x64):Windows (64-bit) NT 6.01
Public Sub Sample3()
  Debug.Print CreateObject("WScript.Shell").ExpandEnvironmentStrings("%PROCESSOR_ARCHITECTURE%")
End Sub

・結果3:

  1. Windows 7(x64) + Office 2010(x86):x86
  2. Windows Server 2008 R2(x64) + Office 2010(x64):AMD64
Public Sub Sample4()
  Debug.Print CreateObject("htmlfile").parentWindow.clientInformation.cpuClass
End Sub

・結果4:

  1. Windows 7(x64) + Office 2010(x86):x86
  2. Windows Server 2008 R2(x64) + Office 2010(x64):x64

上記の結果から、WOW64環境下では正しく判別できない場合があるため、OSが64ビット環境であるかどうかはSample1のようにWMIを使うのが良さそうです。

2013年10月の人気記事前のページ

特殊フォルダーのパスを取得するVBScript次のページ

関連記事

  1. Office関連

    フッターにページ番号と総ページ数を挿入するWordマクロ

    以前書いた、フッターに「ページ番号 / 総ページ数」を挿入するWord…

  2. Office関連

    [リボン・カスタマイズ]ユーザー名により表示するメニューを切り替える。

    今回はリボンをカスタマイズして、ファイルを開いたユーザー名によって表示…

  3. Office関連

    Outlookの連絡先をvcf形式で一括保存する方法

    Outlookの連絡先をvcf形式で保存する場合、通常は「連絡先を v…

  4. Office Scripts

    マクロの記録後に記録した操作をOffice スクリプトとしても保存できるようになりました。

    先日、Excelでマクロの記録操作を行ったところ、記録を終了した際に作…

  5. Office アドイン

    [Office用アプリ]画像を挿入する。

    DocumentオブジェクトのsetSelectedDataAsync…

  6. Office関連

    新しくなったMZ-Tools

    みなさんは「MZ-Tools」というツールをご存知でしょうか?…

コメント

  1. この記事へのコメントはありません。

  1. 2020年 8月 17日

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP