VBA コードをユーザーに表示しない

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

Access データベースに Visual Basic for Applications (VBA) コードが含まれている場合は、データベースを .accde ファイル形式で保存することで、そのコードを隠すことができます。 データベースを .accde ファイルとして保存すると、すべての VBA コード モジュールがコンパイルされ、すべての編集可能なソース コードが削除され、リンク先のデータベースが圧縮されます。 VBA コードの機能は維持されますが、コードを表示または編集することはできません。 通常、データベースは通常どおりに機能します。引き続きデータを更新したり、レポートを実行したりできます。

この記事の内容

.accde ファイルを作成する

.accde ファイルを作成するには、次の手順に従います。 この手順では、元の .accdb ファイルは変更されません。

  1. データベースを開き、[ファイル]> [名前を付けて保存] をクリックします。
  2. [ 名前を付けて保存 ] 領域の [名前を付けてデータベースを保存] で、[ ACCDE の作成 ] を選択し、[ 名前を付けて保存] をクリックします。
  3. [ 名前を付けて保存 ] ダイアログ ボックスで、.accde ファイルを保存する場所を参照します。
  4. 必要に応じて、[ ファイル名 ] ボックスにファイルの新しい名前を入力します。
  5. [保存] をクリックします。
    指定した名前のファイルが既に存在する場合は、既存のファイルの置き換えを求めるメッセージが表示されます。 [ はい ] をクリックして既存の .accde ファイルを上書きするか、[ いいえ ] をクリックして [名前を付けて保存] ダイアログ ボックスに戻り、新しいファイル名を入力します。

.accde ファイルが作成され、元の .accdb ファイルを閉じ、.accde ファイルが開かれます。

.accde ファイルで変更される機能

Access データベースを .accde ファイルとして保存しても、データベース設計が完全に変更できるわけではありません。 ただし、以下のタスクは .accde ファイルでは実行できません。

  • フォーム、レポート、またはモジュールの変更または作成。
  • [ VBA 参照] ダイアログ ボックスを使用して、オブジェクト ライブラリまたはデータベースへの参照を追加、削除、または変更します。
  • VBA コードの表示または変更。
  • Access フォーム、レポート、またはモジュールをインポートまたはエクスポートする。 ただし、テーブル、クエリ、およびマクロは .accdb データベースとの間でインポートまたはエクスポートできます。

フォーム、レポート、またはモジュールの変更に関する問題

元の Access データベースのコピーを必ず保持してください。 .accde ファイル内のフォーム、レポート、またはモジュールのデザインを変更する場合は、元の Access データベース (.accdb ファイル) を変更し、もう一度 .accde ファイルとして保存する必要があります。 テーブルを含む Access データベースを .accde ファイルとして保存すると、後でフォーム、レポート、またはモジュールのデザインを変更する場合に、異なるバージョンのデータを調整する際に問題が発生する可能性があります。 このため、フロントエンド/バックエンド アプリケーションのフロントエンド データベースには、Access データベースを .accde ファイルとして保存するのが最も適しています。

データベースを .accde ファイルとして保存する場合の制限事項

いくつかの制限により、Access データベースを .accde ファイルとして保存できない場合があります。

  • VBA コードへのパスワード アクセス権が必要です。
  • Access データベースが別の Access データベースまたはアドインを参照している場合、参照チェーン内のすべての Access データベースまたはアドインを .accde ファイルとして保存する必要があります。

データベースを .accde ファイルとして保存する前にデータベースをパスワードで暗号化すると、.accde ファイルも暗号化されるため、ファイルを開くたびにパスワードを入力する必要があります。 .accde ファイルを暗号化しない場合は、.accdb ファイルを .accde ファイルとして保存する前に、そのファイルの暗号化を解除する必要があります。 データベースを .accde ファイルとして保存した後、.accdb ファイルを再度暗号化できます。 .accdb ファイルの暗号化を解除するには、次の手順に従います。

  1. [ファイル] タブの [情報] をクリックし、[データベースの解読] をクリックします。 
    [データベース パスワードの解除] ダイアログ ボックスが表示されます。
  2. [ データベース パスワードの設定解除 ] ダイアログ ボックスの [パスワード ] ボックスに、データベース パスワードを入力します。
  3. [OK] をクリックします。

.accde ファイルでの参照のしくみ

Access データベース (.accdb) または別の Access データベースまたはアドインを参照する Access アドイン (.accda) から .accde ファイルを作成しようとすると、Access によってエラー メッセージが表示され、操作を完了できません。 別のデータベースを参照するデータベースを .accde ファイルとして保存するには、参照された最初のデータベースから開始して、参照チェーン内のすべてのデータベースを .accde ファイルとして保存する必要があります。 最初のデータベースを .accde ファイルとして保存した後、次のデータベースの参照を更新して新しい .accde ファイルをポイントしてから、.accde ファイルとして保存する必要があります。

たとえば、Database1.accdb が Database2.accdb を参照し、Database2.accdb が Database3.accda を参照するとします。 Database1.accdb を .accde ファイルとして保存するには、次の手順を実行します。

  1. Database3.accda を Database3.accde という名前で保存します。
  2. データベース 2.accdb を開き、Database3.accde という名前の新しいファイルを指すようにその参照を変更します。
  3. Database2.accdb を Database2.accde という名前で保存します。
  4. Database1.accdb を開き、Database2.accde という名前の新しいファイルを指すようにその参照を変更します。
  5. Database1.accdb を Database1.accde という名前で保存します。

ページの先頭へ