Access アプリケーションを展開する

適用先
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Access は、データベース アプリケーションを開発するための機能豊富なプラットフォームを提供します。 データベース アプリケーションと呼ばれるコンピューター プログラムでは、データと、ビジネス タスクのロジック (アプリケーション ロジック) に従うユーザー インターフェイスの両方を、保存および管理する方法が提供されています。 この記事では、基本的な展開の計画、パッケージ化と署名、データベース アプリケーションの展開、および Access ランタイム環境について説明します。

目的に合ったトピックをクリックしてください

展開を計画する

始める前に、アプリケーションを展開する方法に関する次の質問に答えてください。

データとロジックを分ける必要がありますか?

データ管理とアプリケーション ロジックを 1 つのファイルに組み合わせた Access アプリケーションを作成できます。 これは、Access における既定のアプリケーション構造です。 データ管理とアプリケーション ロジックを 1 つのファイルに組み合わせるのが最も簡単な展開方法ですが、この方法は少数のユーザーが同時にアプリケーションを使用する場合にのみ最適であり、ある程度のリスクが伴います。 たとえば、ユーザーが誤ってアプリケーション ファイルを削除したり破損したりすると、データが失われる可能性があります。 ほとんどの場合は、データの管理とアプリケーションのロジックを分離する必要があります。 これにより、パフォーマンスと信頼性が向上します。

データとロジックを分離する方法の 1 つは、[Access データベース] コマンド ([データベース ツール] タブの [データの移動] グループ) を使用することです。 このコマンドは、データベース アプリケーションを 2 つの Access ファイルに分割します。1 つはロジック用 (フロントエンド) で、もう 1 つはデータ用 (バックエンド) です。 たとえば、MySolution.accdb という名前のデータベースは、MySolution_fe.accdb と MySolution_be.accdb という 2 つのファイルに分割されます。 バックエンド データベースをネットワーク フォルダーなどの共有の場所に配置します。 フロントエンド ファイルを各ユーザーに 1 つのコピーで、ユーザーのコンピューターに配布します。 異なるフロントエンド ファイルを異なるユーザーに配布することもできます。 詳細については、「 Access データベースを分割する」を参照してください。

データ管理とアプリケーション ロジックを分離するもう 1 つの方法は、データの管理にはデータベース サーバー プログラム (Microsoft SQL Server など) を使用し、アプリケーションのロジックには Access を使用することです。 詳細については、「Access データベースを SQL Server に移行する」を参照してください。

データとロジックを分離するその他の理由としては、次のようなものがあります。

  • データの整合性とセキュリティ 1 つのファイル内のデータとロジックを組み合わせると、データはアプリケーション ロジックと同じリスクにさらされます。 別個のロジック ファイルとデータ ファイルを使用する Access アプリケーションは、ネットワーク フォルダーで NTFS セキュリティ機能を活用することで、データの整合性とセキュリティの保護に役立ちます。
    Access ユーザーは、フロントエンド ファイルが配置されているフォルダーに対する読み取り、書き込み、作成、および削除のアクセス許可を持っている必要があります。 ただし、フロントエンド ファイル自体に別のアクセス許可を割り当てることができます。 たとえば、一部のユーザーに読み取り専用のアクセス許可を割り当て、他のユーザーに読み取り/書き込みアクセス許可を割り当てることができます。
    アプリケーションには、特定のデータにアクセスできるユーザーを制御する機能など、さらにセキュリティ オプションが必要な場合があります。 この場合は、SQL Server または SharePoint を使用してアプリケーション データを格納および管理し、Access を使用してアプリケーション ロジックを提供できます。
  • スケーラビリティ Access ファイルの最大サイズは 2 ギガバイト (GB) です。 テキスト データの 2 GB はかなりの量ですが、アプリケーションによっては十分ではない可能性があります。データベース レコードに添付ファイルを格納しているアプリケーションでは特にそうです。 データとロジックを分離した場合、アプリケーションはより多くのデータに対応できるようになります。 ユーザーが大量のデータを保存することを想定している場合は、複数の Access データ ファイルの使用を検討してください。
    また、Access プログラムの仕様で他のスケーラビリティ情報を確認する必要もあります。 Access の仕様の詳細については、「 Access の仕様」の記事を参照してください。
  • ネットワーク容量 複数のユーザーがネットワーク経由で同時にアプリケーションを使用する必要がある場合、データとロジックが 1 つのファイルに結合されていると、データの破損が発生する可能性が高くなります。 さらに、データとロジックを 1 つの Access ファイルにまとめた場合、Access によって生成されるネットワーク トラフィックを最適化することができません。 複数のユーザーがネットワーク経由でアプリケーションを同時に使用する場合は、複数の Access ファイルを使用することにより、またはデータにはデータベース サーバー製品を使用し、アプリケーション ロジックには Access を使用することにより、データとロジックを分離する必要があります。

どのようなネットワーク環境ですか?

ネットワーク環境に適した Access データベース ソリューションを選択することは、それを成功させるための重要なステップです。 ニーズに最適な選択を行うには、次のガイドラインを使用します。

ホーム ネットワーク

Access データベースを共有するユーザーが数人しかいない場合は、ホーム ネットワーク上で各ユーザーが開いて使用する 1 つのデータベースを使用することができます。 詳細については、「Windows 10 のネットワーク経由のファイル共有」を参照してください。

ローカル エリア ネットワーク (LAN)

LAN は、通常は優れたパフォーマンスを備える内部ネットワークですが、単一の部屋、建物、または建物のグループなどの狭い地理的領域に限定されます。 複数のユーザーが LAN 上のデータベースを共有する場合は、データベースを分割し、バックエンド データベースをネットワーク フォルダーに格納し、ユーザーごとにフロントエンド データベースのコピーをデプロイすることをお勧めします。

ワイド エリア ネットワーク (WAN)

広範囲にわたる地理的領域をカバーする WAN には、多くの可能な構成があります。 都市全体に複数のオフィスがあり、公共ネットワーク、専用回線、さらには衛星に接続されている場合があります。 多くの場合、仮想プライベート ネットワーク (VPN) は、自宅や外出先からの安全なリモート アクセスに使用されます。 WANを理解する簡単な方法は、LANの外にいてLANに接続されている場合はいつでもWANを使用しているということです。

Azure ファイル共有

Azure ファイル共有は別の種類のネットワークではありませんが、ファイル サーバーを必要とせずにネットワーク経由でファイル共有を使用する方法を提供します。 ただし、Azure ファイル共有を使用すると、WAN で Access 分割データベースを使用する場合と同様の問題が発生する可能性があります。

警告パフォーマンスが低下し、データベースが破損する可能性があるため、WAN または Azure ファイル共有で Access 分割データベースを使用しないでください。

WAN または Azure ファイル共有で分割データベースを使用する代わりに、次のサポートされている代替手段があります。

  • データを外部ストレージに格納し、次のことに対してリンク テーブルを作成します。

    • SharePoint リスト
    • SQL Server または Azure SQL
    • Dataverse
  • リモート デスクトップ サービス (RDS) (以前のターミナル サーバー) は、ユーザーのクライアント コンピューター上に仮想 Windows デスクトップ環境を作成します。 RDS にはいくつかの利点があります。

    • ユーザーは多くのデバイスで使用できるリモート デスクトップ (RD) クライアントを実行するため、Access または Access データベースをインストールする必要はありません。
    • RD は、ユーザー インターフェイスのみを効率的にストリーミングするシン クライアントであるため、クライアントとサーバー間のデータ転送は最小限に抑えられます。
    • ユーザーは、引き続きクライアント コンピューターからローカルでデータをコピーして貼り付け、レポートを印刷できます。
    • RemoteApp では、ベンダーや現場担当者向けのターンキー アプリケーションなど、1 つのプログラムを実行できます。

    詳細については、「 リモート デスクトップ サービスへようこそ」を参照してください。

ユーザーにはアクセス権がありますか?

すべてのユーザーのコンピューターに Access がインストールされている場合、ユーザーは Access データベース ファイルと同様にアプリケーションを開いて使用できます。

一部またはすべてのユーザーのコンピューターに Access がインストールされていない場合は、アプリケーションを展開するときに、Access ランタイム ソフトウェアをそれらのユーザーに展開することもできます。 詳細については、「 Access ランタイムを理解してダウンロードする」を参照してください。

ページの先頭へ

Access アプリケーションを展開する

Access アプリケーションを展開するには、次のタスクを実行する必要があります。

アプリケーション ソリューションとしてデータベースを準備する

ソリューションをロックダウンし、ナビゲーションとスタートアップを制御し、その他の重要なオプションを設定するには、次の手順を実行します。

タスク 詳細
ユーザーがユーザー インターフェイスを移動する方法を決定します。既定のフォームを使用する、スイッチボードを作成する、ナビゲーション フォームを使用する、またはハイパーリンクとコマンド ボタンを使用する。 Access データベースを開いたときに表示される既定のフォームを設定する
ナビゲーション フォームを作成する
ナビゲーション ウィンドウをカスタマイズする
オブジェクト タブの表示/非表示を切り替える
おすすめの Access テンプレート
メニュー フォームが表示されない
Office のリボンとコマンド メニューをカスタマイズするかどうかを決定する Access でカスタム リボンを作成する
マクロを使用してカスタム メニューおよびショートカット メニューを作成する
以前のバージョンの Access のカスタム ツールバーとスタートアップ設定を使う
一貫性のある Office テーマと背景を適用する Office の背景を追加する
Office テーマを変更する
データベースの起動を制御する カスタム タイトルまたはカスタム アイコンをデータベースに追加する
データベースを開いたときに起動オプションを省略する
データベースを開いたときに実行されるマクロを作成する
Microsoft Office 製品のコマンド ライン スイッチ
重要なプロパティとオプションを設定する スタートアップのプロパティとオプションをコードで設定する
Office ファイルのプロパティを表示または変更する
地域設定の変更 Windows の地域設定を変更して、一部のデータ型の表示を変更する

ヒントすべてを確認するには、[Access のオプション] ダイアログ ボックス ([ファイル] > [オプション]) を参照し、各タブのヘルプをクリックします。アプリケーション ソリューションに対して制御する必要がある追加のオプションがある場合があります。

展開する前に

フロントエンド データベースをデプロイする前に、次のベスト プラクティスを検討してください。

使用するファイル形式を決定する

アプリケーションを展開するときに使用できる Access ファイル形式には以下の 4 つがあります。

  • .accdb これは Access の既定のファイル形式です。 この形式でアプリケーションを展開すると、ユーザーには、選択したあらゆる方法でアプリケーションをカスタマイズしたり、アプリケーション内を移動したりする、ほとんどのオプションが提供されます。 ユーザーがアプリケーションのデザインを変更できないようにする場合は、.accde ファイル形式を使用する必要があります。 また、.accdb ファイルがパッケージ化した後に変更されたかどうかを、ユーザーは簡単に判断できません。これを明確にするために、.accdc ファイル形式を使用します。
  • .accdc この形式は、Access 展開ファイルとも呼ばれます。 Access 展開ファイルは、アプリケーション ファイルと、そのファイルに関連付けられているデジタル署名で構成されます。 このファイル形式では、それがパッケージ化された後で誰もアプリケーション ファイルを変更していないことが、ユーザーに対して保証されます。 この形式は、既定の形式の Access ファイル (.accdb) または Access のコンパイル済みバイナリ ファイル (.accde) に適用できます。 詳細については、「 デジタル署名を追加して信頼を示す」を参照してください。
    Access 展開ファイルに含めることができるアプリケーション ファイルは 1 つだけです。 アプリケーションでデータ ファイルとロジック ファイルが分かれている場合は、個別にパッケージ化できます。
  • .accde この形式は、コンパイル済みバイナリ ファイルとも呼ばれます。 Access では、コンパイル済みバイナリ ファイルは、すべての VBA コードがコンパイル済み状態で保存されるデータベース アプリケーション ファイルです。 Access のコンパイル済みバイナリ ファイルには VBA のソース コードは残っていません。 .accde ファイルを使用すると、設計やコードの変更を防ぎ、データベースのサイズを小さくし、パフォーマンスを向上させることができます。 詳細については、「 VBA コードをユーザーに対して非表示にする」を参照してください。
    Access ランタイムを使用して、Access でコンパイルされたバイナリ ファイルを開くことができます。 ランタイムが .accde ファイル名拡張子を認識しない場合は、ランタイムを指すショートカットを作成し、ショートカットを開くコンパイル済みバイナリ ファイルへのパスを含めてバイナリ ファイルを開きます。
    重要 以前のバージョンで追加された機能がサポートされていない場合、コンパイルされたバイナリ ファイルがコンパイルされたバージョンよりも以前のバージョンの Access を使用して開くことはできません。 この問題を解決するには、ユーザーがインストールしたバージョンの Access でバイナリ ファイルをコンパイルします。
  • .accdr この形式を使用すると、ランタイム モードで開くアプリケーションをデプロイできます。 ランタイム アプリケーションを展開すると、アプリケーションが使用される方法を制御できますが、それはアプリケーションを保護するための手段ではありません。 ランタイム モードの詳細については、「Access Runtime について理解する」を参照してください。

Access フロントエンド データベースのインストールとアップグレード

分割データベース設計を採用する場合は、フロントエンド データベースを各ユーザーに分散する必要があります。 スムーズに進めるために、次のベスト プラクティスを検討してください。

  • 各ユーザーが適切なバージョンの Access を使用していること、およびフロントエンド データベースが正しいバージョンで開かれていることを確認します。 Access には、32 ビット版と 64 ビット版もあります。 正しくない "ビット数" を実行すると、Windows API 呼び出し、DLL ライブラリ参照、および ActiveX コントロールに影響を与える可能性があります。 詳細については、「64 ビット版または 32 ビット版の Office を選択する」を参照してください。
  • データベース ドライバー、セットアップと構成用のバッチ ファイル、アプリケーション関連ファイルなど、必要になる可能性がある他のファイルのインストール パッケージを作成します。 詳細については、 インストール パッケージの作成を参照してください。
  • ユーザーが Access ソリューションをすばやく実行できるように、Windows デスクトップ ショートカットを提供します。 フォルダーの場所、わかりやすいショートカット名、説明、アイコンをショートカットに含めます。 詳細については、「 Office のプログラムまたはファイルのデスクトップ ショートカットを作成する」を参照してください。
    ヒント アプリを スタート メニューにピン留めする方法をユーザーに指示します。
  • 更新が必要な場合にフロントエンド データベースを再デプロイして置き換える効果的な方法を決定し、ファイルのバージョンを管理して変更を追跡します。 たとえば、VBA コードを追加して、新しいバージョンをチェックし、ユーザーがアプリケーションを起動する前でも自動的にアップグレードできます。
  • 接続文字列を含む DSN ファイルを使用して接続文字列を作成する場合、その DSN ファイルも各クライアント コンピューターにインストールする必要があります。 もう 1 つの方法は、VBA コードで "DSN なしの" 接続を作成して、DSN ファイルを不要にすることです。 詳細については、「 DSN-Less 接続の使用」を参照してください。

ページの先頭へ

Access ランタイムを理解してダウンロードする

ユーザーのコンピューターに Access をインストールしなくても実行できる Access アプリケーションを展開するには、Access ランタイムと共にアプリケーションを配布できます。Access ランタイムは Microsoft ダウンロード センターから無料で入手できます。 Access ランタイムを使用して Access データベースを開くと、データベースはランタイム モードで開きます。

ランタイム モードは、Access の特定の機能を既定で使用できない Access のオペレーティング モードです。 ただし、このような使用できない機能の一部は、ランタイム モードで使用可能にすることができます。

ランタイム モードで使用できない機能

次の Access 機能は、ランタイム モードでは使用できません。

  • 特殊キー Ctrl+Break、Ctrl+G、Shift キーなどのキーを使用して、データベースのスタートアップ オプションをバイパスします。
  • ナビゲーション ウィンドウ ナビゲーション ウィンドウは、ランタイム モードでは使用できません。 これは、データベース アプリケーションの任意のオブジェクトにユーザーがアクセスするのを防ぐのに役立ちます。 ランタイム モードの使用中は、ナビゲーション フォームを提供するなどによってユーザーに公開するオブジェクトのみを開くことができます。 ランタイム モードでは、ナビゲーション ウィンドウを使用できるようにすることはできません。
  • リボン 既定では、リボンはランタイム モードでは使用できません。 これにより、ユーザーがデータベース オブジェクトを作成または変更すること、および新しいデータ ソースへの接続や意図されていない方法でのデータのエクスポートなどの他の潜在的に危険な操作を実行することを、防ぐことができます。 ランタイム モードで既定のリボン タブを公開することはできません。 ただし、ユーザー設定のリボンを作成し、そのリボンをフォームまたはレポートに関連付けることはできます。 詳細については、「 Access でカスタム リボンを作成する」を参照してください。
  • デザイン ビューとレイアウト ビュー デザイン ビューとレイアウト ビューは、実行時モードのどのデータベース オブジェクトでも使用できません。 これは、データベース アプリケーションでのオブジェクトのデザインをユーザーが変更するのを防ぐのに役立ちます。 ランタイム モードでは、デザイン ビューまたはレイアウト ビューを有効にすることはできません。
  • ヘルプ 既定では、統合ヘルプはランタイム モードでは使用できません。 ランタイム モード アプリケーションで使用できる機能を制御するため、標準の統合 Access ヘルプの一部はアプリケーションを使用するユーザーにとって無関係であり、ユーザーを混乱させたりイライラさせたりする可能性があります。 独自のカスタム ヘルプ ファイルを作成して、ランタイム モード アプリケーションを補完できます。

ランタイム モードをシミュレートするにはどうすればよいですか?

完全版の Access がインストールされているコンピューターでは、任意の Access データベースを実行時モードで実行できます。 Access データベースを実行時モードで実行するには、次のいずれかの操作を行います。

  • データベース ファイルのファイル名拡張子を、.accdb から .accdr に変更します。

  • /Runtime コマンド ライン スイッチを使用してデータベースへのショートカットを作成します。

    1. Windows デスクトップから右クリックし、[ 新規>ショートカット] を選択します。

    2. MSAccess.exe の場所、データベースの場所、 および /runtime コマンド修飾子を入力します。 次に例を示します。

      "C:\Program Files\Microsoft Office\MSACCESS.EXE" "C:\MyDB.accdb" /runtime
      

    詳細については、「 Office のプログラムまたはファイルのデスクトップ ショートカットを作成する」を参照してください。

ランタイム モードではデータベースのセキュリティが強化されますか?

ランタイム モードでは利用できるナビゲーション機能とデザイン機能が制限されますが、データベース アプリケーションを保護する主な手段としてランタイム モードを使用してはいけません。 完全版の Access がインストールされているコンピューターで、ランタイム データベース アプリケーションを通常のデータベース アプリケーションとして (つまり、すべての機能が使用できる状態で) 開いて、デザインを変更したり、その他の不要な操作を実行したりすることがあります。

完全版の Access がインストールされていないコンピューターにのみデータベース アプリケーションを展開する場合でも、ユーザーが完全版の Access がインストールされているコンピューターにアプリケーションを転送し、ランタイム データベース アプリケーションを通常のデータベース アプリケーションとして開くことは可能です。

ページの先頭へ

Access Runtime をダウンロードする

注

Access 2019 Enterprise の場合は、ランタイムをダウンロードしてインストールしないでください。ダウンロードしてインストールすると、通常版の Access がランタイムのみに置き換えられます。 代わりに、 Office 展開ツール を使用して、AccessRuntimeRetail 製品がインストールされていることを指定します。

Microsoft ダウンロード センターから Access ランタイムをダウンロードするには、使用しているバージョンに対応する適切なリンクをクリックします。

Access Runtime をダウンロード、使用、または再配布するために購入する必要はありません。また、Runtime を配布できるユーザー数に制限はありません。

ページの先頭へ

インストール パッケージを作成する

Access のバージョンに応じて、いくつかの方法があります。

一般的なインストール パッケージを使用する

新しいバージョンの Access の場合は、 Windows インストーラー を使用するか、インストール パッケージを作成するサード パーティのプログラムを検索できます。

ページの先頭へ