Access Runtime環境で動作しているかを判定する

Accessのプログラムを依頼されて納品する際、ユーザー環境にAccessがインストールされていない場合があります。

このような場合は製品版を購入していただくか、AccessのRuntime(ランタイム)をインストールしていただくか、いずれかの対応になります。

Runtime環境の場合はVBAコードによって動作しないものもある為、注意が必要です。

例えばシステム起動時にAccessのリボンを非表示にする等のコードはRuntime環境ではエラーになります。※Runtime環境ではリボンは元々表示されない為

このようにRuntime環境では処理を別にしたいケースもあります。
その際に利用するのが以下のSysCmdメソッドで、AccessのRuntimeが実行されている場合はTrue(-1)を返します。

SysCmd(acSysCmdRuntime)

実際、利用する場合は以下のような処理でRuntime環境によるトラブルを防ぎます。

'Runtimeが実行されているかSysCmdメソッドで判定
If SysCmd(acSysCmdRuntime) Then
    'Runtimeで実行された場合の処理
Else
    'Accessがインストールされている場合の処理
    'リボンを非表示
    DoCmd.ShowToolbar "Ribbon", acToolbarNo
    'ナビゲーションを非表示
    DoCmd.NavigateTo "acNavigationCategoryObjectType", ""
    'データベースウィンドウを非表示
    DoCmd.RunCommand acCmdWindowHide
End If

以上、今回はAccess Runtime環境で動作しているかどうかを判断するVBAコードについてでした。