この記事で分かること
- Accessを自宅からそのまま使用すると、動作が極端に遅くなったりファイルが破損したりする根本的な理由
- 在宅勤務に対応するための「リモートデスクトップ」「データベースのクラウド化」「完全Webシステム化」の仕組み
- 初期費用・月額コスト・動作速度・データ安全性の観点から見た各選択肢のメリット・デメリット
- 実際に社外からのアクセスを試みてトラブルが発生した事例と、被害を最小限に抑えて業務を継続する手順
[この記事で分かること|Accessを修正で使い続けるか, Web化すべきか相談する|https://www.mactism.com/accessdevelopment/|困りごとを相談する|/contact/]
なぜAccessは在宅勤務でそのまま使えないのか?ネットワークの仕組みとボトルネック
在宅勤務の開始に合わせて「オフィスに置いてあるAccessファイルを、自宅からVPN経由で直接開いて仕事を進めよう」と試みる企業は少なくありません。しかし、実際に運用を始めると「画面が完全にフリーズして動かない」「検索ボタンを押してから結果が出るまで数分待たされる」といった深刻な遅延問題に直面します。
この現象が発生する理由は、Accessが採用しているデータベースの構造にあります。OracleやSQL Serverのような大規模向けの「クライアント・サーバー型」のデータベースでは、ユーザーが求めた処理(データの検索や抽出など)をサーバー側が実行し、処理結果のテキストデータのみをネットワーク越しに手元のパソコンへ返却します。
これに対して、Accessは「ファイル共有型データベース」と呼ばれる仕組みで動作しています。これは、データの抽出や並び替え、集計といったほぼすべての計算・処理処理を、サーバー側ではなく「ユーザーの手元にあるクライアントPC」で実行する構造を指します。
つまり、Accessでクエリ(データ抽出)を実行するたびに、ネットワークを介して「.accdb」や「.mdb」といった大容量のデータベースファイルから、必要なデータやインデックス情報を丸ごと手元のパソコンのメモリ上へとロードしなければなりません。
社内LAN環境(有線LANで接続された1Gbps以上の高速・大容量通信)であれば、この大量のパケット往復も一瞬で完了するため、ストレスなく操作できます。しかし、VPNを経由した在宅勤務環境では、自宅のWi-Fiやインターネット回線の速度(実効速度で数十Mbps程度)がボトルネックとなります。
さらに、Windowsのファイル共有プロトコルであるSMB(Server Message Block)は、ネットワークの応答時間(レイテンシ)の影響を極端に受けやすいという特性を持っています。社内LANなら1ミリ秒未満で済む応答時間が、VPNやインターネット回線を経由すると数十ミリ秒以上にまで増大します。この応答待ちの積み重ねが、画面のフリーズや動作の激しい遅延を引き起こす原因です。
また、さらに恐ろしいのが「データベースファイルの破損リスク」です。Accessファイルを直接参照している状態で、自宅のWi-FiやVPN接続に一瞬でも瞬断(パケットロス)が発生すると、ファイルの書き込みやロック制御ファイル(.ldbや.laccdb)の更新処理が途中で途切れてしまいます。その結果、データベースの内部データが不整合を起こし、最悪の場合はファイル全体が破損して起動すらできなくなります。企業の重要な業務データが一日で消失する危険をはらんでいるため、VPN経由での直接利用は絶対に避けるべき運用方法なのです。
Accessを在宅勤務に対応させる4つのアプローチとそれぞれの特徴
社外からAccessを用いたシステムに安全、かつ実用的な速度でアクセスするためには、前述の「ファイル丸ごとのネットワーク転送」や「回線切断による不整合」を防ぐアプローチをとる必要があります。現在、検討しうる主な選択肢は以下の4つです。
1. リモートデスクトップ(RDP)による画面転送方式
オフィスにある個人の物理PCや、社内に設置したWindows Server上の仮想デスクトップ環境に対して、自宅のPCから「リモートデスクトップ接続」を行って操作する方法です。
この方式の最大の特徴は、Accessのプログラム自体も、データベースファイルも、すべて「社内ネットワーク(LAN)内」の端末上で動き続けるという点にあります。自宅のPCへ送信されるのは、処理された画面の「イメージ画像」のみであり、自宅のPCから送信されるのは、キーボードやマウスの「入力信号」のみです。
そのため、ネットワークを流れるデータ量が極めて少なくなり、自宅の回線速度に左右されずに社内と同じスピードでサクサクと操作できます。途中で自宅のネット接続が切れたとしても、社内のPCは稼働し続けているため、データベースが破損する心配は全くありません。
2. データベースのクラウド化(ハイブリッド方式)
Accessが持つ「画面(フロントエンド)」と「データ(バックエンド)」の役割を完全に分離し、データ部分のみをMicrosoft Azure SQL Databaseなどのクラウド上に移行・構築する手法です。
各社員のPCに配布したAccessプログラム(フロントエンド)から、インターネット経由でクラウドデータベースへODBC接続(データベース間で通信するための仕組み)を行い、データを取得します。データを一元管理しつつ、使い慣れたAccessの入力画面や帳票出力の機能をそのまま活用できます。
クラウドデータベースは接続の一時的な切断に耐えるように設計されているため、ファイル共有のようなデータ破損トラブルは防げますが、VBAのプログラムの書き方(クエリを介さずレコードセットを1件ずつ処理するループ処理など)によっては、クラウドからのデータ転送量が増えて動作が重くなる場合があり、事前のプログラム改修や最適化が必要となるケースがあります。
3. 完全なWebシステム化(クラウド移行・再構築)
既存のAccessを完全に廃止し、Webブラウザ(Google ChromeやMicrosoft Edgeなど)からアクセスして利用するWebアプリケーションとしてシステムをゼロから再構築するアプローチです。
各パソコンにOfficeやAccessのランタイム、各種ライセンスをインストールして回る必要がなくなり、インターネット環境さえあれば自宅のパソコンからはもちろん、タブレットやスマートフォンなど様々なデバイスから同一のシステムへ安全にアクセスできます。
今後の企業の成長や、在宅勤務の永続的な標準化を見据える場合、最も抜本的かつセキュリティ性能や保守性に優れた解決策となります。ただし、画面や機能を一から設計し直すため、初期の開発コストと導入準備のための期間を要します。
4. VPN経由でのファイル直接参照(非推奨)
冒頭で解説した通り、社内の共有フォルダに置いてあるAccessファイルをVPN経由で直接読み込む方法です。特別な開発コストがかからないため応急処置として試されがちですが、実務に耐えうる速度は出ず、ファイルの破損トラブルがほぼ確実に発生するため、恒久的な在宅勤務の選択肢からは外すべきです。
各アプローチの徹底比較:コスト・パフォーマンス・移行難易度
それぞれの方法について、導入にかかるコストや実際の処理性能、移行作業の手間を比較しやすいよう、以下のテーブルに整理しました。
| 比較項目 | 1. リモートデスクトップ(RDP) | 2. データベースのクラウド化 | 3. 完全なWebシステム化 | 4. VPN直接接続(非推奨) |
|---|---|---|---|---|
| 初期費用 | 中(対象PCやサーバー、VPNルーター等の手配) | 中(テーブル移行、ODBC設定、接続検証) | 高(画面設計、プログラミング、環境構築) | 極めて低(既存インフラを活用) |
| 月額コスト | 中(RDSライセンス費用、電気代など) | 低(クラウドDBの従量課金のみ) | 中(Webサーバー・DB維持費、保守費用) | 極めて低(既存のVPN費用のみ) |
| 応答速度(体感) | 非常に快適(画面転送のみのため極めて軽量) | 普通(ネットワーク回線やSQLの設計次第) | 非常に快適(Webに最適化されたデータ構造) | 極めて遅い(大容量ファイルを全て転送するため) |
| ファイル破損リスク | なし(すべての書き込み処理が社内LANで完結) | なし(サーバー側の整合性管理による) | なし(トランザクション管理により安全) | 非常に高い(通信切断時に即破損の危険あり) |
| 移行・改修の手間 | 不要(既存のAccessファイルをそのまま流用) | 中(Accessリンクテーブルの再定義、一部SQL化) | 高い(要件定義からフルリニューアルが必要) | 不要(接続のためのネットワーク設定のみ) |
| 推奨される規模 | 少人数〜中規模(数名〜20名程度) | 中規模(10名〜50名程度) | 中規模〜大規模(人数制限なし) | 利用不可(緊急時の一時確認のみ) |
この対比からわかるように、最も素早く、かつこれまでのAccessの画面や機能をそのまま活かして在宅勤務に対応させたいのであれば、「リモートデスクトップ」がファーストチョイスとなります。しかし、対象となる社員の数が数十名規模に増えてくると、リモート操作用のPC台数の管理や、Windows Serverの接続ライセンス(RDS CALなど)のコスト負担が急増します。
そのため、利用人数やデータ量の増加に応じて、「データベースのクラウド化」や、将来的な「完全なWeb化」への投資を検討していくという、段階的な移行ロードマップを描くのが最も合理的です。
【実務トラブル事例】在宅勤務化で発生した問題と具体的な解決手順
十分な事前の技術検証を行わないまま、現場の「早く家で使えるようにしてほしい」という要望に流された結果、社内システム全体の停止や予期せぬ予算オーバーを招いてしまった、典型的なトラブル事例とその解決ステップをご紹介します。
トラブル事例1:VPN経由の直接アクセスで、データ書き込み中にファイルが頻繁に破損(製造業)
とある製造業の企業では、在宅勤務体制への速やかな移行を迫られ、社内サーバーに置かれた受注管理用Accessファイルを、全社員が自宅からVPN経由で直接開く運用を開始しました。導入当初から「動きが重い」というクレームが頻発していましたが、ある日、データ入力中に通信が一時的に切断された瞬間に、「データベースの形式が認識できません」という致命的なエラーが発生。ファイルそのものが開けなくなってしまいました。前日の夜に取得したバックアップから復旧したものの、その日に登録した数十件の受注データが完全に消失し、丸一日業務が停止しました。
このトラブルを解決した手順
- ステップ1:直接接続の即時停止とアクセス権限の剥奪
さらなる破損被害の拡大を防ぐため、共有フォルダ上のAccessファイルに対する、VPN経由での直接アクセス権限を即座に無効化しました。 - ステップ2:社内PCをホストとしたリモートデスクトップ環境の緊急構築
社内にある稼働中、あるいは遊休状態のデスクトップPCを「接続先」として、在宅勤務者が個別にそのPCへ接続する画面転送の環境(RDP)を2日間で急遽手配。処理のすべてを社内LANの中に閉じ込めることで、データ破損リスクを完全にシャットアウトしました。 - ステップ3:将来の完全Web移行を見据えた要件定義の開始
リモートデスクトップの環境維持(PCの電源管理やフリーズ対応)は社内情シス部門の負担が大きいため、3ヶ月後に向けて「Webアプリ化」の開発プロジェクトをスタート。不要なAccess機能を削ぎ落とし、まずは入力部分から段階的にWebシステムへ移行するロードマップを定めました。
トラブル事例2:リモートデスクトップ導入後、ライセンス費用の高騰とPCの管理負担に苦悩(サービス業)
在宅勤務者全員に「リモートデスクトップ(RDP)」を用意したサービス業の事例です。一見、問題なく稼働しているように見えましたが、在宅勤務が長期化するにつれて問題が顕在化。社内のPCを24時間常に稼働させ、電源が入った状態にしておく必要があり、オフィスの電気代が上昇。さらに、リモート接続用ツールの月額課金ライセンスや、接続先PCがフリーズした際に「オフィスに行って電源を入れ直す」という社内情報システム担当者の出社コストと稼働負担が爆発的に増加してしまいました。
このトラブルを解決した手順
- ステップ1:利用頻度の調査とユーザーのグループ分け
社員全員を「毎日Accessにデータを入力し続けるメイン担当者」と「週に数回、集計結果を確認するだけの参照ユーザー」に仕分けしました。 - ステップ2:データベースのクラウド化による、ライトユーザー向け入力フォームの開発
データベースのバックエンド(データ格納部)をクラウドデータベースへ移行。データ入力頻度の低い参照ユーザーに対しては、Accessを経由せずに動作する「簡易的なWebデータ登録フォーム」を開発して提供。リモートデスクトップ用に契約していた高額なライセンスとホスト用PCの台数を全体の3分の1にまで圧縮することに成功しました。 - ステップ3:物理サーバーの完全撤去とクラウドへの一元化
社内に置かれていた各種物理サーバーとホストPCを、最終的にすべてクラウド上の仮想マシンへ統合。オフィスの停電やPCの故障といった物理的トラブルから社内の管理部門を完全に解放しました。
自社に最適な選択肢を見極めるための判断基準チェックリスト
在宅勤務でAccessをどのように運用すべきか決定する際は、以下のチェックリストを基にして自社の現状要件を客観的に評価してください。
- チェック1:在宅勤務中、同時にAccessを動かす人は何人程度か?
- 5名以下の場合:接続先のPCを少数用意するだけでよいため、初期費用が最も抑えられ、開発も不要な「リモートデスクトップ(RDP)」が推奨されます。
- 5名〜20名程度の場合:リモート操作用PCの管理負荷が高まります。データベースのみを「クラウドデータベース」に移行し、各自のPCから接続するハイブリッド構成が、速度と運用の容易さの面で適しています。
- 20名以上の場合:リモート接続のライセンス費用や、データベースの同時接続による競合が発生しやすくなります。この段階からは、長期的運用に最適な「完全なWebシステム化」への刷新を強く推奨します。
自社の在宅勤務の規模感と将来のビジョンに応じて、短期的な応急処置としてリモートデスクトップを取り入れつつ、並行してシステムのブラックボックス化の解消や「クラウド移行・Web化」へのプロジェクトを進めることが、実務における最も手堅く、失敗しない成功への道筋です。
よくある質問(FAQ)
自宅のMacからでも、在宅勤務で社内のAccessを使えるようにする方法はありますか?
はい、リモートデスクトップ(RDP)接続を利用すれば可能です。Access自体はMac上で直接動かすことはできませんが、接続元としてMac用のリモートデスクトップアプリ(Microsoft提供)を使用し、オフィス内にあるWindows PCやWindows Serverに接続して操作することで、全く問題なくAccessの機能を利用できます。
Accessのデータをクラウド(Azure SQL Databaseなど)に移す際、既存のVBAはすべて書き直しになりますか?
いいえ、すべてを書き直す必要はありません。基本的には「リンクテーブル」の参照先を社内サーバーからクラウドデータベースのテーブル(ODBC経由)に変更するだけでそのまま動作することが多いです。ただし、大量のレコードを一度にループ処理するような非効率なVBAコードがある場合は、著しく動作が遅くなることがあるため、一部分の処理をクラウド側で行うように部分的な改修が必要になります。
AccessからWebシステムへの開発リプレイスには、どれくらいの期間と予算がかかりますか?
システムの規模(テーブル数、画面数、帳票の種類など)によって大きく変動しますが、一般的な目安として、開発期間は3ヶ月〜6ヶ月程度、開発費用は数百万円規模からとなるケースが多いです。一度にすべての機能を開発するのではなく、まずは在宅勤務で必須となる「入力・検索画面」だけを先行してWeb化(スモールスタート)することで、初期の導入期間と開発費用を大幅に抑える方法も可能です。