1. なぜAccess Runtimeを使うのか?
- ライセンス費用の削減
- Accessのフルバージョンをすべてのユーザーにインストールするとコストが高い。
- しかしRuntime版は無償配布できるため、データ入力・フォーム操作だけが必要なユーザーには最適。
- シンプルなユーザー環境
- Runtimeではデザインビューやナビゲーションウィンドウが隠され、誤編集を防ぎやすい。
- エンドユーザーは用意されたフォームやレポートを操作するだけなので混乱しにくい。
- 保守とバージョン管理
- 開発者はフルバージョンのAccessでアプリを作成→Runtime環境のユーザーに渡すだけ。
- ユーザーが勝手にフォームやテーブルの構造を弄れない点はメリットとも言える。
2. Access Runtimeの入手方法とインストール
- Microsoft公式サイトからダウンロード
- 「Access Runtime 20XX」の形で、Officeバージョンに合わせたRuntimeを取得。
- 32bit/64bitの区別に注意し、ユーザーのOS環境に合わせたビット数を選ぶ。
- インストール手順
- EXEファイルを実行→簡単なウィザード→完了。
- Runtimeは開発用のUIは非表示、あくまでアプリを実行するための最小構成のみ。
- バージョン整合
- アプリケーション(.accdb)が2016形式なら、対応するRuntime 2016以降が必要(古すぎるRuntimeでは開けない可能性あり)。
- 同じPCに複数バージョンのRuntimeやフルAccessがインストールされると衝突する場合もあるのでテストが必要。
3. アプリをRuntime向けにパッケージする方法
3.1 単純配布
- 開発者PCで.accdbや.accdeファイルを作成
- ユーザーPCにAccess Runtimeをインストール
.accdb/.accde
ファイルをユーザーに渡す→ダブルクリックでRuntimeが起動→アプリを利用
メリット: 手軽
デメリット: ユーザーがショートカットを作ったり、ファイル配置を間違えたりするリスクがある
3.2 パッケージと署名 (Access デベロッパ拡張機能)
- Access Developer Extensionsを使い、「パッケージソリューションウィザード」でMSIインストーラやEXEを作る
- 自社証明書でVBAプロジェクトに署名し、ユーザー側のマクロセキュリティ警告を回避
- インストーラを配布→ユーザーはセットアップだけ実行すればOK
メリット: 安定した配布体験、信頼済みロケーション設定など自動化
デメリット: Developer Extensionsが特定バージョンしか対応していなかったりセットアップがやや面倒
4. ユーザー環境の整備:注意点
- トラステッド ロケーション (信頼済み場所)
- Runtimeでも信頼されていないフォルダから起動するとセキュリティ警告が出る
- 事前にコントロールパネル→Accessのセキュリティ設定でそのフォルダを信頼済み場所に追加しておく
- バックエンド/フロントエンド分割
- マルチユーザー環境ではテーブルをバックエンド(.accdb)にまとめ共有フォルダへ置き、フロントエンド(フォーム・レポート)をユーザーPCに配置
- Runtimeユーザーはフロントエンド起動→バックエンドにリンクテーブルアクセスする構成が定番
- ショートカット
- ユーザーがRuntimeでアプリを起動しやすいようにデスクトップやスタートメニューにショートカットを用意
- ショートカットのターゲットに
path\msaccess.exe path\myApp.accdr
(または.accdb/.accde)と明示しておくと確実
- マクロ・VBAセキュリティ設定
- Runtimeでも未署名のVBAを実行すると警告が出る可能性→署名 or 信頼済み場所
- [Officeボタン] → [オプション] → [セキュリティ センター] で設定
5. トラブルシュート:Runtime限定の不具合
- 設計ビューが開けない
- 当然の仕様。RuntimeにはデザインビューやVBAエディタが存在しない
- 修正が必要になったら、開発者がフルバージョンで修正→配布し直す
- メニュー/リボンが表示されない
- Runtimeはリボンやナビウィンドウを簡略化しているので、独自リボンを使っている場合に表示制限が出る可能性
- スタートアップ設定やリボンXMLをきちんと適用できるかテスト
- エラーメッセージが分かりにくい
- Runtimeはエラー時にデバッグ画面を出さず、単に「エラーが発生しました」と出るだけ
- 開発者がOn Errorコードを丁寧に仕込んで分かりやすいエラー処理をする必要がある
- 外部参照(DAO/ADO等)のバージョン不整合
- Runtime環境に必要なライブラリがないか、古い/新しいバージョンを使っているとコンパイルエラー
Tools->References
の依存関係を調整し、ユーザー環境でも動作するように
6. 運用と配布のフロー
- 開発マシン(フルAccess)でアプリ作成 & テスト
- テーブル分割、VBA記述、フォームデザイン
- 動作OKならaccde(MDE)ファイル化して配布用に
- Runtime用インストーラ or 手動コピー
- 場合によってはパッケージソリューションウィザードでMSIを作り、Runtime一式を同梱
- 小規模ならRuntimeのセットアップ → accdeファイルをコピーでも可
- アップデート時
- バージョンアップするときは新しいaccdeを上書き → ユーザーPCで旧版を削除or上書き
- 自動更新スクリプト (Auto FE Updaterなど) で運用を効率化
重要:
- 大規模ユーザー数なら自動配布システムやグループポリシーでRuntime + アプリを展開する方が手間が少ない
7. まとめ:Access Runtimeだけで配布するメリットと安全運用
- メリット
- 無料でユーザーに提供でき、ライセンスコストを抑えられる
- デザイン変更やコード閲覧ができないため、誤操作・改変リスクが減る
- インストールが軽量でユーザー側のPC負荷が少ない
- 注意点
- デザインビュー不可 → バグ修正や改良は開発環境で行い、再度配布
- エラー時のデバッグ画面が出ない → きちんと例外処理を組む
- セキュリティ設定(信頼済み場所、署名)をユーザー環境に合わせ調整
Access Runtimeは、小中規模アプリの現場で容易に配布できる強力な手段です。ユーザーは入力や参照だけができればOKというケースなら、フルAccessライセンス不要でコスト削減にも繋がります。事前の配布手順とエラー対策をしっかり押さえ、安全&スムーズな運用を目指しましょう。
関連記事
これらの方法を組み合わせて、Access Runtimeでユーザー環境を整えるフローを構築すれば、手軽かつ安全にAccessアプリケーションを多人数に配布可能です。ぜひ実践してみてください。
ABOUT ME

入社した会社では、Accessを活用した基幹システムが長年運用されていました。しかし、開発者の高齢化により保守が困難となり、システムの維持・更新が急務に。
ほぼAccessに触れたことのなかった私は、ゼロから学びながら基幹システムを再構築してみることに。ついにはAccessによるシステム開発エンジニアとしてのスキルを身につけるまでに成長。
元々の業務のノウハウとそれを効率化するためのツール(Access)によって業務効率化システムをいくつも開発してきました。
みなさんの”なにか(業務のノウハウ)”とAccessで業務効率化を実現するお役に立てれば幸いです。
月30万の高配当投資も行っています。最新の銘柄情報もお届けしていきます。