Access Runtimeで無償配布する延命策|できること・できないこと
Access Runtimeは無償配布ツールですが実行専用で、デザインビュー・ナビゲーション・標準リボンは使えません。2GB上限や同時利用の弱さはRuntimeでは解決しない点も整理。配布設計の3つの準備も解説します。
結論:Access Runtimeでライセンスコストは減らせる。ただし用途は「配布専用」に限る
Access Runtimeは、Microsoftが無償で提供する「実行専用」のAccess環境です。Accessのフルライセンスを持たない利用者のPCにも、作成したAccessアプリを配布して動かせます。ただしこれは開発者向けの配布ツールであり、利用者がデザインビューで修正したりテーブル設計を変えたりすることはできません。
「ライセンスを買わずに全員がAccessを使える」という理解は半分正しく、半分誤りです。アプリを使うだけなら無償で配布できます。しかし設計変更、VBAの修正、クエリのデバッグは引き続き開発者側のフルライセンスが必要です。また、Runtimeを入れても2GBのファイルサイズ上限や同時利用の不安定さは解消されません。延命策として活用できる場面と、解決しない課題を正確に把握しておくことが重要です。
Access Runtimeでできること・できないこと
まず一覧で確認します。「できる/できない」の区分は、Microsoft公式の配布ガイド(Deploy an Access application)に基づいています。
| 項目 | フルAccess | Access Runtime |
|---|---|---|
| フォーム・レポートの実行 | できる | できる |
| VBAコードの実行 | できる | できる(コンパイル済み前提) |
| データの入力・編集・削除 | できる | できる |
| レポートの印刷 | できる | できる |
| カスタムリボンの表示 | できる | できる(独自定義のみ) |
| デザインビュー・レイアウトビュー | できる | できない |
| ナビゲーションウィンドウの表示 | できる | できない |
| 標準リボンタブの表示 | できる | できない |
| Ctrl+Break / Ctrl+G(VBEデバッグ) | できる | できない |
| Shiftキーによる起動オプション回避 | できる | できない |
| ヘルプの参照 | できる | 既定では使えない |
Runtimeのユーザーは、開発者が用意したフォームやメニューを通じてアプリを操作します。ナビゲーションウィンドウが非表示になるため、利用者がテーブルやクエリを一覧から直接開くことはできません(開発者がボタンやマクロ、VBAから特定のテーブル・クエリを開かせることは可能です)。裏を返せば、利用者に「触ってほしくない部分」を一覧から隠すには都合がいい仕組みです。
無償配布の仕組みとバージョンの注意
Access RuntimeはMicrosoftのサポートページから無償でダウンロードできます。32ビット版(x86)と64ビット版(x64)の2種類があり、配布先PCに合わせて選ぶ必要があります。
バージョンの取り扱いには一点注意が必要です。配布先のPCにすでに別のOffice(Word・ExcelなどのClick-to-Run版)が入っている場合、インストールされるRuntimeのバージョンはそのOfficeに合わせられます。たとえば配布先にOffice 2021が入っていれば、Access 365 RuntimeではなくAccess 2021 Runtimeが入ります。Microsoftの公式サポートページにもこの動作が明記されています。
また、コンパイル済みのバイナリファイル(.accde形式)のバージョン互換にも注意が必要です。Microsoftの配布ガイドでは、新しいバージョンのAccessで追加された機能をサポートしない古いバージョンでは.accdeを開けない場合があると説明されています。開発側が新しいバージョンの機能を使ってaccdeを作成した場合、配布先のRuntimeも対応するバージョンである必要があります。バージョン管理は配布設計の段階で決めておくことを当社ではお勧めしています。
所定のライセンス条件(自社開発アプリへの組み込み、セットアップ内のコードを改変しない、商用ホスティングでの提供禁止など)を満たせば、配布人数に上限なく再配布できます。ただしRuntimeはWindows Installer(MSI)形式のOfficeとは共存できないため、配布先がMSI形式のOffice(ボリュームライセンスの旧パッケージ等)を使っている場合は別途対応が必要です。
設計時に必要な3つの準備
Runtime向けにアプリを作るには、フルAccess環境での開発時にいくつかの設計上の工夫が必要です。後から対処しようとすると手戻りが大きいため、配布を前提として作り始める段階で決めておきます。
1. エラー処理を全ルーチンに入れる
フルAccess環境では未処理エラーが発生してもデバッグウィンドウで中断して原因を追えますが、Runtime環境ではCtrl+Gが使えず、未処理エラーはユーザーに不親切なダイアログを出すか、処理が停止するだけになります。VBAのすべてのプロシージャにOn Error GoToブロックを入れ、エラー番号とメッセージをログに記録するか、ユーザーに分かる形でダイアログを出しておく必要があります(当社での配布実績に基づく推奨)。「動いているから大丈夫」と思っていたコードがRuntime上でのみ問題を起こすことは珍しくありません。
2. カスタムリボンを用意する
Runtimeでは標準リボンタブが非表示になります。フォーム上のボタンで操作を完結させることもできますが、複数機能を切り替える場面ではXML定義でカスタムリボンを作成し、フォームと関連付けておくと利用者が操作しやすくなります(当社推奨)。ボタンの配置はアプリの用途に合わせて絞り込み、利用者が迷わない設計にします。
3. 起動フォームを設定する
ナビゲーションウィンドウが使えないため、利用者が起動直後にどこから操作を始めるかを設計段階で決めておく必要があります。スタートアップ設定で起動フォームを指定し、そのフォームから他の機能へ導線を作ることを当社では推奨しています。Accessのスタートアップオプション(「このデータベースを開くときのオプション」)を使って、起動フォームの設定とナビゲーションウィンドウの非表示を明示的に設定しておくと、Runtime環境と開発環境で見え方を揃えやすくなります。
Runtimeでは解決しない4つの課題
Access Runtimeはライセンスコストを下げる手段としては有効ですが、Accessそのものの構造的な制約は変わりません。
| 課題 | Runtime導入後も残るか | 参考 |
|---|---|---|
| 2GBのファイルサイズ上限 | 残る | 2GBの壁参照 |
| 同時利用時の遅さ・破損リスク | 残る | 複数人利用の問題参照 |
| 属人化・誰も触れない問題 | 残る(むしろ悪化しやすい) | 開発者が1人に集中するため |
| Access 2021のサポート終了(2026-10-13) | 残る | サポート終了の詳細参照 |
特に属人化の点は注意が必要です。Runtime配布によって「フルAccessを持っている開発担当者1人がすべてを管理する」という構造が固定されやすくなります。その担当者が退職したとき、誰もVBAを修正できず、エラーが出ても原因を追えないという状態に直結します。Runtime導入を検討するなら、同時に延命チェックリストで体制面を確認しておくことを当社はお勧めしています。
また、セキュリティ面での限界もあります。Runtimeでナビゲーションウィンドウを隠しても、フルAccessをインストールしているユーザーが同じファイルを開けば、ナビゲーションウィンドウ経由でオブジェクトにアクセスできてしまいます(accde形式ならVBAソースの閲覧や設計変更はできませんが、テーブルやデータは見えます)。Microsoftの配布ガイドも「Runtimeをセキュリティの主要手段として使ってはいけない」と明記しています。データを保護するにはAccessのデータベースパスワードによる暗号化や、VBAソースを読めなくするaccde形式へのコンパイルを組み合わせることを当社では推奨していますが、accde形式はVBAコードの改変防止であり、データそのものへのアクセス制御はデータベースの暗号化やネットワーク権限設計で別途対処する必要があります。
Runtimeが有効な延命シナリオ
以上を踏まえると、Access Runtimeが実際に役立つ場面は次のように絞られます。
- 社内に「このアプリを使うだけ」の利用者が多く、Accessのフルライセンスを購入するコストを抑えたい
- フォームとレポートによる操作に限定した設計が既にできており、利用者がデザインを変える必要がない
- VBAにエラー処理が網羅されており、Runtime環境でのテストが済んでいる
- 開発者がフルAccessを持ち、修正・再配布のフローが確立している
逆に、利用者が自分でクエリを書いたりレポートを改修したりすることがある環境では、Runtimeでは制限が強すぎます。また、そもそもAccessの仕様書がなく誰も中身を把握できていない状態なら、Runtime配布よりも先に整備すべきことがあります。
自社のAccessが現状どの状態にあるかを把握したい場合は、無料の解析可否チェックをご活用ください。ファイルを送っていただければ、配布可能な状態かどうかを含めた構造の概況をご報告します。
よくある質問
Q. Access Runtimeは本当に無料ですか。商用利用も問題ないですか。
無償で提供されており、配布人数の上限もありません。MicrosoftはRuntimeを「Distributable Code(再配布可能コード)」として位置づけており、自社開発のアプリに組み込んで配布することを認めています。ただし商用で配布する場合もライセンス条項の遵守が前提で、Runtimeそのものを単体製品として販売すること、セットアップ内のコードを改変すること、商用ホスティング(サービスとして提供)することなどは認められていません。
Q. Runtime環境でアプリが動かない。原因はどこを見ればよいですか。
まずVBAのエラー処理が全プロシージャに入っているか確認します。次に、64ビット版RuntimeでActiveXコントロールを使っていないか確認します。古いActiveXコントロールが64ビット環境で動かないケースについてはActiveX無効化の記事でも触れていますが、これはRuntime固有の問題ではなく64ビットOffice全般の制約です。また、配布先のOfficeバージョンとRuntimeのバージョンが一致しているかも確認ポイントです。
Q. Runtime向けに作ったアプリは、フルAccessでも普通に開けますか。
開けますが、ナビゲーションウィンドウや標準リボンがそのまま使えるため、Runtime環境での見え方とは異なります。スタートアップオプションやカスタムリボンの設定が有効であれば、フルAccessでも同様のUIで開きます。開発中は意図的にRuntimeに近い起動状態でテストする習慣をつけると、配布後の問題を減らせます。
Q. Access 2021 Runtimeは2026年10月13日以降も使えますか。
サポートが終了するのはAccess 2021本体と同じく2026年10月13日です。Runtime版も別扱いにはなりません。サポート終了後もファイルが動作し続ける可能性はありますが、動作は保証されず、セキュリティ更新も提供されなくなります。2026年10月以降も配布を続けるなら、Microsoft 365版のAccess Runtimeへの移行を検討してください。Microsoft 365版のRuntimeは、Microsoftが提供・更新を継続している間はサポート対象のビルドへ更新されます。
触れないAccessが「診断できるか」だけ、確かめませんか。
顧客データは送信不要。発注の義務もありません。
約2分・ファイル送信不要・発注義務なし/説明はオンライン・売り込みはしません