この記事で分かること
- 社内に散らばるAccessファイルを漏れなく検出し、一覧化する実務的手順
- 利用者、使用部署、起動頻度を正確に把握するためのヒアリング設計
- 棚卸し業務を円滑に進めるための「管理台帳」の具体的な項目と作成例
- ブラックボックス化したデータベースに直面した際の現実的な対処法
社内Accessの棚卸しが必要な理由と放置するリスク
Microsoft Access(以下、Access)は、プログラミングの専門知識がなくても比較的容易にデータベースを構築できるため、多くの現場で重宝されてきました。しかし、手軽さゆえに部門単位で個別に作成・改修が繰り返され、情報システム部門の管理が及ばない「シャドーIT(野良Access)」化しやすい特徴を持っています。これらを未整理のまま放置することには、以下のような極めて高いリスクが伴います。
1. 業務の暗黙知化(ブラックボックス化)と引き継ぎの破綻
特定の社員だけが作成・保守を行っているAccessは、その担当者が異動や退職をした途端にブラックボックス化します。システムに不具合が発生しても、クエリの構成やVBA(Visual Basic for Applications)のソースコードを誰も解読できず、業務が完全に停止してしまうリスクがあります。
2. セキュリティおよびコンプライアンスの低下
アクセス権限が適切に設定されていない共有フォルダーに置かれたAccessは、誰でも顧客情報や機密データをエクスポートできてしまいます。また、データの変更履歴(ログ)が残らない設計になっていることも多く、情報漏洩や不正書き換えが発生した際の状況把握が困難です。
3. バージョンアップやOS更新時の動作不良
WindowsやOfficeのアップデート、またPCの買い替え(32bitから64bitへの移行など)に伴い、古いAccessファイルは突然起動しなくなったり、エラーを吐き出したりします。特に、過去の古いバージョンで作られた「.mdb」形式のファイルは、現行環境との互換性が低く、早期の対処が必要です。
これらの問題を未然に防ぐためには、稼働しているシステムの全体像を正しく把握し、不要なものを整理する「棚卸し」の実施が不可欠です。現状を可視化することで、システムの維持コスト削減やセキュリティ統制、さらにはより効率的なモダンシステムへの移行計画をスムーズに立てることが可能になります。
Access棚卸しを推進する5つのステップ
社内に埋もれたAccessを漏れなく整理するためには、場当たり的に聞くのではなく、システマチックに情報を収集していく必要があります。以下の5つのステップに沿って進めることで、抜け漏れのない棚卸しが可能になります。
ステップ1:共有サーバーおよびPC内のファイル一括スキャン
まずは、社内のファイルサーバーやNAS、場合によっては各個人のPC内を対象に、拡張子「.accdb」および「.mdb」を持つファイルを検索してリストアップします。数千ものフォルダーが存在する場合、手動での確認は不可能なため、コマンドプロンプトや PowerShell、またはファイル検索ソフトを用いて、該当ファイルをパス情報(格納場所)を含めて一括でテキスト出力します。
# PowerShellでの検索例:共有フォルダー内のAccessファイルをリスト化 Get-ChildItem -Path "\\FileServer\Share" -Include *.mdb, *.accdb -Recurse -ErrorAction SilentlyContinue | Select-Object FullName, LastWriteTime, Length | Export-Csv -Path "C:\temp\access_list.csv" -Encoding UTF8
ステップ2:ファイルプロパティによる一次スクリーニング
抽出された膨大なファイルリストから、明らかに「使われていない古いファイル」を除外します。ファイルの「最終更新日時」を確認し、例えば「過去1年以上更新されていないもの」や「一時的なバックアップと思われる同一内容のファイル(例:コピー、20211025バックアップなど)」を仕分けします。これにより、調査対象を真に稼働している可能性があるファイルだけに絞り込み、後続のヒアリングコストを大幅に削減します。
ステップ3:利用者と所属部署へのアンケート調査
スクリーニングしたファイルについて、実際に誰がどのような業務で使用しているかを特定するための調査を行います。共有ファイルの保存先フォルダーの権限から推測される部署のリーダーや、最終更新者に直接問い合わせを行います。アンケートでは、単に「使っていますか」という質問だけでなく、具体的な業務名や代替手段の有無を細かくヒアリングすることがポイントです。
ステップ4:処理頻度と業務依存度のマッピング
ヒアリング結果をもとに、それぞれのシステムが「どの程度の頻度で起動され」「どの程度業務において重要なのか」を整理します。例えば、「毎日朝一番に起動し、これが動かないと出荷指示ができないシステム」と、「年に1度の棚卸し時のみ参照するシステム」では、保守の優先度や万が一トラブルが起きた際の影響度がまったく異なります。この2軸でマッピングを行い、重要度を定義します。
ステップ5:今後の対応方針(継続・廃止・移行)の決定
マッピング結果を踏まえ、すべてのAccessファイルに対して個別の方針を決定します。方針は大きく分けて以下の4つに分類されます。
- 現状維持(継続): 引き続きAccessとして運用し、台帳管理を行う。
- 機能改修: 利用頻度は高いが、動作が不安定なため内部プログラムをリプレイスする。
- 他システム移行: 業務のコアを担っているため、Webシステムやクラウドサービスへ再構築する。
- 廃止・統合: すでに使われていない、または類似のExcelや基幹システムで代用可能なため廃棄する。
実務で即利用できる「Access管理棚卸し台帳」の設計例
棚卸しで得られたデータは、Excelやスプレッドシートを用いて一元管理できる「台帳」に落とし込みます。単にファイル名を並べるだけではなく、後日システム改修やトラブル対応が発生した際にインフラ・保守担当者が即座に動けるよう、実務的な項目を盛り込むことが成功の鍵です。
以下に、実務でそのまま活用できる管理台帳の構成例を示します。
| 管理ID | システム名(ファイル名) | 格納場所(ファイルパス) | 主管部署 / 利用者 | 処理頻度 | 業務重要度 | 対応方針 |
|---|---|---|---|---|---|---|
| AC-001 | 顧客受注管理システム.accdb | \\Svr01\Sales\App\ | 営業部 / 営業事務5名 | 毎日(常時起動) | 高(売上に直結) | 将来的にWebシステム化 |
| AC-002 | 配送ルート計算ツール_old.mdb | \\Svr01\Logistics\Temp\ | 物流課 / なし(確認中) | 不明(過去半年更新なし) | 低(別ツール導入済) | 一定期間後にアーカイブ・廃止 |
| AC-003 | 製造現場日報管理.accdb | \\Svr02\Factory\Report\ | 製造部 / 工場スタッフ3名 | 毎週金曜日 | 中(日報集計用) | Accessのまま保守継続・バックアップ設定 |
この台帳を定期的に更新する仕組みを作ることが重要です。少なくとも年に1回、あるいはオフィスのライセンス更改タイミングに合わせて台帳のチェックと更新を行い、新たな野良Accessが生まれて放置されるのを防止します。
調査時に直面する代表的な3大トラブルと解決アプローチ
棚卸し調査は、単にファイルを調べて回るだけではスムーズに進まないケースが多々あります。現場の反発や技術的な制約など、実務で必ずと言っていいほど直面する3つの主要なトラブルと、それぞれの解決手順をまとめました。
トラブル1:「誰も使っていない」と判断したファイルを削除したらクレームが来た
更新日時が古いため「不要」と判断し、ファイルを削除したりアクセス権を消去したりした直後、特定の現場から「業務が動かなくなった」とクレームが入るケースです。これは、年に1回しか使わない決算用システムや、他システムからバッチ処理でデータだけを参照しているファイルだった場合に発生します。
【解決アプローチ:いきなりの削除は厳禁、段階的アクセス制限を実施】
不要と推測されるファイルであっても、いきなり完全削除してはいけません。まずはファイルの名称を変更(例:頭に「_del_保留」を付ける)するか、共有フォルダーのアクセス権限を「読み取り専用」に変更して、数週間様子を見ます。もしその間にエラーや苦情が出なければ、ファイルを一時的に別フォルダーに退避(アーカイブ)させ、そこから半年間問題がなければ完全に削除する、という段階的なプロセスを踏むのが最も安全です。
トラブル2:開発者が既に退職し、システムにロックがかかっていて中身が見えない
棚卸しの過程で、中のデータベース構造やVBAコードを確認しようとしたところ、VBAプロジェクトにパスワードがかかっていたり、システムそのものが開けない設定(起動時に特定のフォームのみが表示され、データベースウィンドウが非表示になっているなど)になっていたりするトラブルです。
【解決アプローチ:Shiftキー起動の試行とヒアリングの強化】
Accessには、起動時に「Shiftキー」を押し続けることで、スタートアップ設定(自動フォーム起動など)をバイパスして、テーブルやクエリの設計画面を直接開くことができる機能があります。まずはこちらを試してください。ただし、完全にパスワードで保護されている場合は、無理にクラッキングを試みるのではなく、実際の利用者に「どのような画面で、どのような入力を行い、何を出力しているか」という『外から見える動作(Input/Output)』をヒアリングし、仕様を逆引きで整理・ドキュメント化します。自社での解析が困難な場合は、Accessの改修実績が豊富な外部ベンダーへ早めに相談することをおすすめします。
トラブル3:各部署が個別に同一ファイルをコピーして使い、データが先祖返りしている
共有サーバー上の元ファイルを、部署ごと、あるいは個人ごとにPCローカルにコピーして運用しているケースです。それぞれが独自のデータを入力しているため、どのデータが最新かつ正しいのか分からなくなり、データの整合性が崩壊してしまいます。
【解決アプローチ:リンクテーブル機能を用いた分割運用への統合】
これは、Accessの「テーブル(データ)」と「インターフェース(クエリ、フォーム、レポート)」がひとつのファイルに混在していることで起きる問題です。棚卸しを機に、共通の「データ部分(バックエンド)」をサーバー上に配置し、ユーザーの手元にはリンクテーブルを貼った「操作用ファイル(フロントエンド)」を配布する「システム分割構造」へと再構築します。これにより、データは常に一元化され、利用者はそれぞれのローカル環境から安全に最新のデータへアクセス可能となります。
棚卸し完了後のAccess保守・システム移行ロードマップ
棚卸しが無事に完了し、台帳が整理されたら、次に行うべきは各システムを今後どうしていくかという「グランドデザイン(将来像)」の設計です。すべてのAccessを無理に廃止する必要はありません。システムの特性に合わせて最適に分類・運用していくことが、最もコストパフォーマンスに優れたアプローチです。
1. Accessとして使い続ける(保守の継続)
利用者が限られており、現状の機能で十分に業務が回っている中規模以下のシステムであれば、そのままAccessとして維持するのが最も現実的です。ただし、ブラックボックス化を防ぐため、以下の最低限の運用ルールを整備します。
- 定期的なデータベースの最適化と自動バックアップ体制の確立
- 簡単な業務マニュアル(何のボタンを押すと何が起こるか)の整備
- 修正を加えた際の変更内容を記録する「更新履歴メモ」の保管
2. より強固なデータベースへのステップアップ移行
データ量が急増し、Accessの容量制限(2GB制限)に達しそうな場合や、同時アクセス人数が増えて動作が極端に重くなっているシステムについては、データ保存先(バックエンド)だけをMicrosoft SQL Server(無料のExpress版など)やクラウドデータベースに移行する方法が有効です。画面や操作手順(フロントエンドのAccess)はそのまま維持できるため、現場の利用者に操作教育の手間をかけることなく、システムの安定性とセキュリティを飛躍的に向上させられます。
3. Webシステム化やローコードツールへの全面移行
社外(リモートワーク先や出張先)からもシステムを利用したい場合や、スマートフォンのブラウザからも入力を行いたい場合、また複数拠点でのリアルタイムな情報共有が必要な場合は、Webシステムやローコードツール(kintoneやPower Appsなど)への移行を検討します。移行には開発コストが伴いますが、今後のOSアップデートやOfficeライセンスの変更に左右されない強固な業務基盤を手に入れることができます。
Q. ファイルサーバー内に膨大なAccessファイルがあり、すべてを調査する時間がありません。優先順位の付け方はありますか?
まずは「ファイルの容量」と「最終更新日時」で足切りを行いましょう。容量が極端に小さく(数MB以下)、かつ最終更新日が半年以上前のものは、一時的なテスト用やバックアップである可能性が高いため後回しにします。逆に、容量が数十MB以上あり、毎日更新されているファイルを最優先調査対象としてリストアップし、順次ヒアリングを進めるのが効率的です。
Q. 利用者が「このAccessは絶対に業務で使っている」と言い張るものの、実際は使われていないように見えます。検証方法はありますか?
直接ヒアリングしても解決しない場合は、対象のAccessファイルが格納されているフォルダーの「共有アクセスログ」をネットワーク管理者経由で監視するか、ファイルを一時的に別の名前に変更して数日間アクセスをブロックする手法が最も確実です。本当に使われていれば、数日以内に「システムが動かない」という連絡が必ず来ます。連絡が一切なければ、実質的に使われていないゾンビファイルと判断できます。
Q. Accessの棚卸しや整理、移行作業を外部ベンダーに委託する場合、どのような情報が必要ですか?
外注時には「稼働しているAccessファイルの現物」と、もしあれば「大まかな業務の流れがわかる資料や帳票のサンプル」があると見積もりが非常にスムーズになります。パスワードがかかっていて開けない場合でも、その旨を事前にお伝えいただければ、解析や代替システム提案を含めて対応してくれるベンダーが多いため、まずは現状のファイル一式を揃えるところから始めましょう。