Accessのリンクテーブルについてお探しですね。
広告
Accessのリンクテーブル、作り方とリンク先の直し方を分かりやすく解説
Accessで業務用のデータベースを使っていると、「リンクテーブル」という仕組みに出会うことがよくあります。
特に、画面やクエリを入れたファイルと、実際のデータを入れたファイルを分けて使っている場合、サーバーを移したりパソコンを買い替えたりすると、「ファイルが見つかりませんでした」というエラーが出てしまうことがあるんです。
この記事では、Accessのリンクテーブルの作り方と、リンク先が変わったときの直し方を、初めての人にも分かりやすく説明していきます。
1. Accessの「リンクテーブル」って何?まずは基本を理解しよう
Accessの「リンクテーブル」というのは、今開いているAccessファイルの中には実際のデータを持たず、別のAccessファイルやExcel、SQL Server、SharePointなど、外部にあるデータを参照する仕組みのことです。
ナビゲーションウィンドウ(画面左側のテーブル一覧)でテーブル名の横に矢印のようなマークが付いていたら、それがリンクテーブルです。
見た目は普通のテーブルとほとんど同じですが、データの保存場所は別のファイルやサーバーにあります。
リンクテーブルがよく使われる理由は、Accessのデータベースを「フロントエンド」と「バックエンド」に分けて管理できるからです。
フロントエンドには画面(フォーム)やクエリ、レポート、マクロ、VBAといった「見せ方や処理の部分」を入れておいて、バックエンドには実際のデータを保存するテーブルを置きます。
複数の人で使う業務システムでは、各利用者にフロントエンドを配って、共有サーバーにあるバックエンドへつなぐ形にすると、修正作業やバックアップがとても楽になります。
それに、Accessには1つのファイルにつき2GBまでという容量制限があります。
データがどんどん増えていくシステムでは、テーブルを別ファイルに分けてリンクすることで、ファイルが大きくなりすぎるのを防げます。
また、画面やクエリを修正するときに実際のデータを触らずに済むので、安全性も高まります。
ただし、リンクテーブルは接続先の場所(パス)を覚えているので、バックエンドファイルの場所や名前が変わるとリンクが切れてしまいます。
そのリンク切れを直すときに使うのが「リンクテーブルマネージャー」です。
2. リンクテーブルの作り方|別ファイルのテーブルにつなげる手順
リンクテーブルを新しく作るときは、まずリンク元になるフロントエンド側のAccessファイルを開きます。
画面上部のリボンメニューから「外部データ」タブを選んで、リンクしたいデータの種類を選びます。
別のAccessファイルの中にあるテーブルをリンクする場合は、「新しいデータソース」や「Access」を選んで、つなぎたいバックエンドファイルを指定します。
Accessのバージョンによって画面の表示が少し違うこともありますが、基本的な流れは「外部データを選ぶ」→「ファイルを指定する」→「インポートじゃなくてリンクを選ぶ」という順番です。
ここで気をつけたいのが、「インポート」と「リンク」の違いです。
インポートは外部ファイルのテーブルを今開いているAccessファイルの中にコピーする操作で、元のファイルとのつながりは残りません。
一方、リンクは外部ファイルのテーブルを参照し続ける操作です。
つまり、リンクテーブルとして作った場合、データの追加や更新はリンク先のテーブルに対して行われます。
業務システムで複数の人が同じデータを見たり更新したりする目的なら、普通はリンクを選びます。
Accessファイルをリンクする場合の基本的な手順は、こんな感じです。
– フロントエンド側のAccessファイルを開く
– 「外部データ」タブから「Access」(または該当するデータソース)を選ぶ
– バックエンドファイルを指定して、「リンクテーブルを作成してソースデータにリンクする」を選択する
– リンクしたいテーブルにチェックを入れて確定する
作成が終わると、ナビゲーションウィンドウにリンクテーブルが表示されます。
リンクテーブルの名前は、リンク先のテーブル名と同じになるのが一般的ですが、Access側で表示名を変えて使うこともできます。
ただし、クエリやフォームがそのテーブル名を参照している場合、名前を変えると動かなくなることがあります。
最初のうちは、テーブル名を勝手に変えずに、リンク先と同じ名前で作っておくのが安全です。
3. リンクテーブルマネージャーでリンク先を変更・更新する方法
リンク先のバックエンドファイルを別のフォルダに移動した、共有サーバーのドライブ名が変わった、パソコンを入れ替えた、といった場合は、「リンクテーブルマネージャー」で接続先を変更します。
まず、フロントエンド側のAccessファイルを開いて、「外部データ」タブから「リンクテーブルマネージャー」を選びます。
Microsoft 365やAccess 2021など比較的新しいバージョンでは、データソースごとにリンクテーブルが一覧で表示されて、状態の確認、更新、再リンク、編集、追加、削除などができます。
リンク先を変更する基本的な操作は、対象のデータソースまたはリンクテーブルにチェックを入れて、「再リンク」をクリックする流れです。
Accessが新しいリンク先ファイルの場所を聞いてきたら、移動後のバックエンドファイルを選びます。
複数のテーブルが同じバックエンドファイルにリンクされている場合、データソース単位で選べば、まとめてリンク先を変更できることが多いです。
更新後に状態欄が表示されるバージョンでは、「成功」と出ているか確認しましょう。
古いAccessでは、リンクテーブルマネージャーの画面にテーブル一覧が表示されて、「すべて選択」や「OK」でリンク先を更新する形式になっている場合があります。
このとき、「リンク先を更新するためのプロンプトを毎回表示する」というチェック項目があったら、必要に応じてオンにします。
これをオンにすると、Accessが勝手に同じ名前のファイルを探してリンクするのではなく、自分で明示的にリンク先ファイルを指定できます。
特に、同じフォルダに似た名前のバックエンドファイルがいくつもある場合は、間違ったファイルにつながないために便利です。
リンクテーブルマネージャーでは、ファイルの場所を変えるだけじゃなくて、リンク先のテーブル名が変わった場合の再リンクにも対応できます。
たとえば、フロントエンド側では「売上データ」というリンクテーブル名のまま、バックエンド側では「売上データ2026」というテーブルにつなぎたいケースがあります。
この場合、再リンクするときに出てくるテーブル選択画面で、新しいリンク先のテーブル名を指定します。
ただし、構造が大きく違うテーブルにつなぐと、既存のクエリやフォームで必要な項目(フィールド)が足りなくてエラーが出る可能性があります。
リンク先を変更した後は、リンクテーブルを直接開いてレコードが表示されるか、主要なフォームやクエリが正常に動くかを確認しましょう。
リンクテーブルマネージャー上で「成功」と表示されても、実際の業務画面で必要な項目が参照できなければ意味がありません。
特に、サーバー移行や年度切り替えの直後は、代表的な入力・検索・集計処理を一通り確認してから利用者へ案内すると安心です。
4. リンク先更新で失敗しやすい原因と安全に運用するコツ
リンクテーブルの更新で失敗する原因として多いのは、ファイルの場所の指定ミス、共有フォルダへのアクセス権が足りない、バックエンドのファイル名やテーブル名が変わった、ネットワークドライブの割り当てが違う、といったことです。
たとえば、自分のパソコンでは「F:\Data\データ用.accdb」として見えていても、別の人のパソコンではFドライブが全然違う場所を指していることがあります。
こうなると、特定の人だけAccessが開けない、またはリンクテーブルが失敗するという症状が起こります。
共有環境では、できれば「UNCパス」と呼ばれる「\\サーバー名\共有フォルダ\ファイル名.accdb」のような形式で管理すると、ドライブ文字の違いによるトラブルを減らせます。
ただし、既存のシステムや社内ルールでネットワークドライブ運用が前提になっている場合もあるので、どの形式を使うかは職場の管理方針に合わせる必要があります。
いずれにしても、利用者がバックエンドファイルのあるフォルダに対して読み取り・書き込みができることが重要です。
読み取り専用だと、データ更新やロックファイルの作成で問題が出ることがあります。
リンクテーブルを削除して作り直す場合にも注意が必要です。
フロントエンド側のリンクテーブルを削除しても、普通はバックエンド側の実際のテーブルそのものは削除されません。
削除されるのは、リンク情報とナビゲーションウィンドウ上のリンクテーブルだけです。
ただし、間違ってバックエンドファイルを直接開いて、実際のテーブルを削除してしまうとデータが失われます。
作業前には必ずバックアップを取って、どっちのファイルを操作しているのかを確認してから進めてください。
安全に運用するための確認ポイントは、こんな感じで整理できます。
– 作業前にフロントエンドとバックエンドの両方をバックアップする
– リンク先のファイル名、フォルダのパス、テーブル名を事前にメモしておく
– リンク更新後にリンクテーブルマネージャーの状態欄と主要画面の動作を確認する
– 複数人で使っている場合は、全員のAccessを閉じた状態で作業する
– サーバー移行のときは、古いパスと新しいパスの対応表を残しておく
Accessのリンクテーブルマネージャーは、リンク切れを直すためだけの機能じゃなくて、外部データソースを管理するための中心的な画面です。
Microsoft 365やAccess 2021以降では、データソースの編集、リンクテーブルの検索、追加、削除なども行いやすくなっています。
リンクテーブルがたくさんあるデータベースでは、どのテーブルがどのデータソースにつながっているのかを定期的に確認しておくと、トラブルが起きたときの原因特定が速くなります。
ちなみに、利用者が多い環境や、定期的にリンク先が変わる運用では、VBAでリンク先を自動更新する方法もあります。
DAOのTableDefオブジェクトを使って、リンクテーブルのConnectプロパティを書き換えてRefreshLinkを実行する仕組みです。
ただし、VBAによる自動更新は便利な反面、間違ったパスを設定すると全利用者に影響する可能性があります。
まずはリンクテーブルマネージャーで手動更新の仕組みをしっかり理解して、運用ルールが固まってから自動化を検討するのが現実的です。
Accessのリンクテーブルの作り方とリンク先変更・更新(マネージャー)の手順を押さえておけば、サーバー移行やパソコン入れ替えのときにも落ち着いて対応できます。
ポイントは、リンクテーブルが「実際のデータじゃなくて外部テーブルへの参照」であることを理解して、リンク先の場所・名前・権限をきちんと管理することです。
作業前のバックアップと更新後の動作確認を徹底すれば、大切な業務データを守りながら安定したAccess運用ができるようになります。
広告
