Access

Access2003のVBAで64bit判定する方法

2020年8月17日

この記事はこんな方におすすめです

・Access2003のVBAで64bit判定したい方

・Win64関数でエラーになった方

Access2003などで開発された過去の資産をWindows10の環境で使用したい場合に32bitと64bitの壁にぶち当たることがあると思います。

他の方のソースコードを参考にAccess2003のVBAに「If Win64 Then」を実装して実行してみたところ、Access2003の環境ではWin64関数が定義されておらずエラーになってしまいました。

他に良い方法がないか調べてみたところ、きぬあささんのブログに答えがありました。

下記に私が引用したソースコードをそのまま抜粋します。

Public Sub Sample()
  If Isx64 Then
    MsgBox "64ビット環境です。"
  Else
    MsgBox "64ビット環境ではありません。"
  End If
End Sub
 
Public Function Isx64() As Boolean
  Dim colItems As Object
  Dim itm As Object
  Dim ret As Boolean
   
  ret = False '初期化
  Set colItems = CreateObject("WbemScripting.SWbemLocator").ConnectServer.ExecQuery("Select * From Win32_OperatingSystem")
  For Each itm In colItems
    If InStr(itm.OSArchitecture, "64") Then
      ret = True
      Exit For
    End If
  Next
  Isx64 = ret
End Function

大変参考になって助かりました。

おかげで32bitと64bitで処理を分岐させることができました!

[blogcard url="https://www.ka-net.org/blog/?p=3779"]

Accessマクロ&VBAのプログラミングのツボとコツがゼッタイにわかる本
最新のAccess2019/2016にも対応しているので失敗しない

Rakuten

Amazon

Yahoo!ショッピング

 

  • この記事を書いた人
  • 最新記事

かじ

マッチングアプリで出会った女性と結婚をした埼玉県在住の新婚さん。 ガジェット好きではあるけど子どもができたため下火に。。。 社内SEとしてプログラミングなど自分の知識と経験をいろんな人に役立ってもらえるように記事を更新します!

-Access
-