Column業務・基幹システム

Access移行の4つの選択肢|2GBの上限と限界サイン

公開

Authorこの記事を書いた人

株式会社Riize Advisors 代表取締役 細倉 尚将

株式会社Riize Advisors 代表取締役

細倉 尚将

外資系コンサルティングファームにてM&A戦略・新規事業立案等に従事した後、株式会社Riize Advisorsを創業。コンサルタントとエンジニアのチームで、AI・システム開発を構想から実装・運用まで支援している。

Share

「十数年前に社内で作ったAccessの受発注管理を今も使っていますが、作った人が退職して誰も中を触れません」「最近、動作が遅くなり、ファイルが壊れないか心配です」「移行した方がよいとは思うものの、何に移せばよいのか、どこから手を付ければよいのか分かりません」。Accessで業務を回してきた企業から、こうした声が聞かれます。この記事では、Accessで作った仕組みが限界になる理由と、限界のサインのチェック表、すぐに移さなくてよい場合、4つの移行先の向き不向き、失敗しにくい移行の進め方をお伝えします。

Accessで作った仕組みが限界になる理由

Accessは、テーブル、クエリ、フォーム、レポート、VBAを一つのファイルにまとめ、現場に近い人が業務の仕組みを作れる道具です。紙やExcelで回していた受発注や在庫の管理を、少ない費用でデータベースに置き換えられたことは大きな価値でした。長く使われ続けていること自体が、Accessが役目を果たしてきた証拠です。

そのうえで、長く使ううちに限界が見えてくることがあります。ここで言う限界は、Accessという製品の欠点ではありません。多くの場合、原因は次の4つのどれかです。

原因起きていること
規模取引やデータの量が、作った当時の想定を超えて増えている状態
同時利用使う人や拠点が増え、一つのファイルを多くの人が同時に開いている状態
属人化作った人だけが中身を知っていて、その人がいない、または近く辞める状態
環境の変化Officeの版やビット数、Microsoft 365の契約、ファイルの置き場所が作った当時と変わっている状態

Accessを数年以上使ってきた企業のご相談では、困りごとの中心がAccessそのものより、作った人しか中身を知らないことにある場合が多くあります。

公式の仕様で押さえておく値

判断の前提として、公式の仕様を確認しておきます。Microsoft サポートの「Access の仕様」によると、主な値は次のとおりです。

項目仕様(公式ページの記載)
データベース(.accdb または .mdb)の合計サイズ2GBからシステム オブジェクトに必要な領域を差し引いたもの
同時ユーザー数255
使用可能な接続数Microsoft 365 版のAccessは512、それ以外の版は256
開いているテーブル数Microsoft 365 版のAccessは4,096、それ以外の版は2,048(リンク テーブルとAccessが内部で開くテーブルを含む)

2GBの上限について、同じページには、ほかのAccessデータベースのテーブルにリンクすることで回避でき、リンク先のファイルはそれぞれ最大2GBになる、という注記があります。ただし、ファイルを分けるほど、何がどこに入っているかを管理する手間は増えます。

同時ユーザー数の255は仕様上の上限です。実際に何人まで快適に使えるかは、ネットワークの速さやファイルの置き場所、作り方によって変わります。数字に届いていなくても、使う人が増えたころから動作が重くなったと感じる場合は、限界のサインの一つと考えてよいでしょう。

動く環境の変化

Accessで作った仕組みは、WindowsやOffice、ファイルを置くサーバーとセットで動いています。環境が変わると、中身は同じでも動かなくなることがあります。

一つ目はOfficeのビット数です。Microsoft Learn の「64 ビット Visual Basic for Applications の概要」によると、Office 2010・2013・2016では既定で32ビット版がインストールされ、Office 2019とMicrosoft 365からは既定が64ビット版になっています。64ビット版のOfficeで実行するときは、Windows APIを呼び出すDeclareステートメントにPtrSafeキーワードを付け、ポインターやハンドルを扱うデータ型も64ビットの大きさを保持できる形に直す必要があります。古いVBAのままパソコンを入れ替えると、ある日から一部の画面や処理が動かない、ということが起こり得ます。

二つ目はMicrosoft 365の契約です。Microsoft サポートの「Microsoft 365 サブスクリプションおよび Office 365 サブスクリプションの一部として含まれるアクセス」によると、個人および一般法人向けでAccessが含まれるのは、Microsoft 365 Family、Personal、Business Standard、Business Premium、Apps for businessです。社内でMicrosoft 365のプランを見直すときに、Accessを使う人のライセンスが抜けていないかを確かめておく必要があります。

三つ目は、Accessをブラウザから使う仕組みの扱いです。Microsoft サポートの「Web で共有する Access データベースを作成する」には、Access 2010 Webデータベースの作成と使用は推奨事項ではなくなった、という注意書きがあります。また、Microsoft Learn の SharePoint Server サブスクリプション エディションで非推奨または削除された機能では、Access Services 2010とAccess Services 2013は削除されてサポートされなくなったとされ、代替の候補としてPower AppsとPower Automateの検討が勧められています。Accessを「社外や別の拠点からブラウザで使えるようにする」道は、今はAccessの外に求めることになります。

Accessの限界のサイン(チェック表)

次の9つのうち、自社に当てはまるものを確認してみてください。

#サイン起きていること
1ファイルの容量の増加データのファイルが大きくなり、最適化や分割を繰り返している状態
2動作の重さ使う人が重なる時間帯に、検索や集計、保存が遅くなる状態
3ファイルの破損や修復「最適化と修復」を何度か行ったことがあり、そのたびに業務が止まった状態
4作った人の不在作った担当者が退職した、または中身を説明できる人が一人しかいない状態
5中身の分からないVBAどのボタンを押すと何が起きるのか、誰も全体を説明できない状態
6パソコンの入れ替えでの不具合64ビット版のOfficeや新しいWindowsで、一部の画面や処理が動かない状態
7社外や拠点からの利用の要望外出先や別の拠点から入力・確認したいが、今の仕組みではできない状態
8Excelとの往復Accessから書き出したデータをExcelで加工し、また取り込む作業が日常になっている状態
9中核業務の依存受注・出荷・請求など、止まると取引先に迷惑がかかる業務がAccessに乗っている状態

1〜3:規模と同時利用のサイン

1〜3は、仕組みに負荷がかかっているサインです。2GBまで余裕があっても、データと使う人が増えるほど、一つのファイルを共有する作り方には負担がかかります。特に3の修復は、そのたびに業務が止まり、直前の入力が失われるおそれもあるため、軽く見ない方がよいサインです。

4〜6:属人化と環境のサイン

4と5は、多くの場合セットで起きます。VBAの中に、割引の計算や締め日の扱い、例外の取引の処理といった業務のルールが書き込まれていて、そのルールを文書で説明できる人がいない、という状態です。作った人の退職が決まっている場合の引き継ぎの進め方は、システム担当者の退職・引き継ぎの進め方で詳しく説明しています。

6は、環境の変化に気付くきっかけになるサインです。パソコンの入れ替えを機に、64ビット版のOfficeでVBAが動かないと分かることがあります。Accessのデータファイルを古いファイルサーバーに置いている場合は、サーバー側のOSのサポート期限も確かめておきます。考え方はWindows Server 2016 のサポート終了と業務システムで取り上げています。

7〜9:使い方が広がったサイン

7と8は、作った当時より業務の範囲が広がっているしるしです。Excelとの往復は、Excel管理で起きる問題とよく似ており、Excel管理の限界サインとシステム化の判断の考え方がそのまま当てはまります。

9は、判断に最も影響するサインです。Accessが止まると受注や出荷が止まる状態であれば、ほかのサインが少なくても、止まったときの備えと移行の検討を始める時期に来ています。

すぐに移さなくてよい場合

サインがいくつか当てはまっても、すぐにAccessから移る必要があるとは限りません。次のような場合は、まずAccessのまま整える方が向いています。

  • 使う人が数人で、同じ時間に何人も開くことが少ない場合
  • 当てはまるサインが4〜5だけで、中身を記録に残せば当面は困らない場合
  • 対象が部署内の集計や台帳など、止まっても数日は手作業で代わりが利く業務の場合
  • 業務のやり方を近く変える予定があり、変えた後の形が決まっていない場合

Accessのまま整えるときは、まずバックアップの仕組みと、中身の記録を作ります。テーブルの一覧、主なクエリとフォームの役割、VBAの処理の概要を書き出すだけでも、作った人がいなくなったときの影響を小さくできます。データ用のファイルと画面用のファイルを分ける(データベースの分割)だけで、同時に使うときの負担が軽くなることもあります。

反対に、サイン9が当てはまり、かつ3や4も当てはまる場合は、整えるだけで済ませず、移行の計画を立てることをお勧めします。

移行先の4つの選択肢と向き不向き

選択肢は大きく4つあります。全社で一つを選ぶのではなく、業務ごとに選ぶのが現実的です。

選択肢向いている場合注意すること
Accessのままでの整理使う人が少なく、属人化の解消が主な課題の場合規模や同時利用の限界そのものは残ること
データだけSQL Server等へ移し、Accessを画面として残す画面と操作はそのままで、データの量や同時利用の負担を減らしたい場合VBAと画面の属人化は残り、Accessを使う人のライセンスと環境の管理も続くこと
SaaS・kintoneなどのノーコードツール業務のやり方が標準的か、台帳・申請・案件管理が中心の場合自社独自の複雑なルールを無理に載せると、別の形で作り込みが増えること
Webシステムとしての作り直し自社独自のやり方が利益や取引先の評価につながる中核業務の場合費用と期間がかかるため、作り直す範囲と効果を先に決めること

1. Accessのままでの整理

使う人が少なく、止まっても代わりが利く業務であれば、記録とバックアップを整えるのが最も費用のかからない方法です。整理した結果は、そのまま次の移行の材料にもなります。

2. データだけSQL Server等へ移し、Accessを画面として残す

Accessのテーブルを SQL Server などのデータベースに移し、Accessからはリンク テーブルとしてつなぐ方法です。使う人から見ると画面と操作はほとんど変わらず、データの容量や同時利用の負担を軽くできます。Microsoftは移行のためのツールとしてSQL Server Migration Assistant for Accessを提供しており、AccessのデータベースをSQL ServerやAzure SQLへ移すための手順がまとめられています。

この方法で、データの置き場所の問題は解決しますが、VBAに書かれた業務のルールや画面の属人化はそのまま残ります。

3. SaaS・kintoneなどのノーコードツール

会計や勤怠のように、どの会社でもやり方が近い業務は、SaaSに移す方が向いています。Accessで作り込んだ独自の機能を、SaaSの標準の機能に合わせて手放せるかどうかが判断の分かれ目です。

台帳や申請、案件の管理が中心であれば、kintoneなどのノーコードツールも選択肢になります。現場の担当者が自分たちで直せるという点では、Accessと近い良さがあります。一方で、自由に作れる分、数年後に同じような作り込みの積み重ねが起きることもあります。その見極め方は、kintone運用の限界サインと3つの選択肢で説明しています。

4. Webシステムとしての作り直し

見積の作り方や受発注の条件、在庫の引当てのルールなど、自社独自のやり方が取引先からの評価や利益につながっている業務は、必要な機能に絞ってWebシステムとして作り直す方法が向いています。ブラウザから使えるため、拠点や外出先からの利用、パソコンの入れ替えの影響といった環境の課題もまとめて解消できます。

Riizeでは、標準的な業務はSaaSに任せ、自社独自の中核の業務だけを必要な機能に絞ってスクラッチで作る、という分け方をお勧めしています。今は生成AIを使った開発によって、自社に合わせたシステムを以前より短い期間や少ない費用で作れる場合があり、作り直しを比べるときの判断材料に入れておくとよいでしょう。業務を止めずに切り替えるための計画の立て方は、基幹システムリプレイスの進め方で詳しく説明しています。

移行するなら、AIを前提に組み直す

Accessから移すときは、画面を置き換えるだけでなく、AIを使う前提で業務を組み直す機会にもできます。データが一か所にそろっていれば、取り組みやすくなるものがあります。

取り組み前提になること
紙の注文書や伝票をAI-OCRで読み取り、入力の手間を減らすこと読み取った値を入れる先の項目と、確認の手順が決まっていること
社内の問い合わせや、手順書・過去の取引の記録を検索して答える仕組み文書や記録の置き場所と、誰が何を見られるかが決まっていること
月次の集計や帳票の作成の自動化集計の元になるデータが一か所にあり、項目の意味がそろっていること

どれも、データの置き場所と形が決まっていてこそ効果が出ます。Accessのファイルがいくつにも分かれ、Excelとの往復で値が加工されている状態では、AIを使っても読み取った結果を入れる先が定まりません。移行でデータを整えることが、そのままAIを使う準備になります。

どの業務からAIを使うかは、手間と頻度と価値で業務を並べて決めます。評価の進め方はAI化する業務の洗い出し方で、社内の文書を検索して答える仕組みの導入の手順はRAG導入の進め方と決める7項目で説明しています。

たとえば医療卸の基幹システム刷新では、見積・受発注・請求がそれぞれ独立して管理され、同じ取引情報を複数の帳票やシステムへ重複して入力していました。業務を工程単位で棚卸しして単一のデータ基盤の上に組み直し、その上にAI-OCRによる入力の自動化を加えて、二重入力と転記ミスを解消しています。取り組みの概要は支援実績で紹介しています。AIの活用の進め方は、AI開発の支援でもご相談いただけます。

Accessからの移行の進め方

どの選択肢を選ぶにしても、次の順に進めると判断を誤りにくくなります。

段階主な作業次へ進む条件
1. 中身の棚卸しテーブル、クエリ、フォーム、レポート、マクロ、VBA、外部とのつながりを一覧にします使われているものと使われていないものが分かれていること
2. 業務のルールの書き出しVBAやクエリに書かれた計算や条件を、文章で説明できる形にします移行先で同じ結果を出すための条件がそろっていること
3. データの整理重複や表記の揺れ、使われていない項目を直し、移す範囲を決めます移したデータで、今の帳票と同じ数字が出ること
4. 並行稼働と切り替え一定の期間、新旧の両方で同じ業務を処理して結果を比べます差が出た原因がすべて説明できること

1. 中身の棚卸し

最初に、Accessのファイルの中に何があるかを一覧にします。確認したいのは次のような点です。

  • テーブルの数と、それぞれに何件くらいのデータが入っているか
  • クエリのうち、日々の業務で使っているものと、一度きりで作られたもの
  • フォームとレポートのうち、今も使われているもの
  • マクロやVBAで動いている処理と、それを呼び出しているボタンや画面
  • ほかのAccessファイルやExcel、外部のデータベースへのリンク

使われていないクエリやレポートまで移そうとすると、費用と期間が膨らみます。使っている人に、どの画面を何のために開いているかを聞きながら、移す対象を絞り込みます。

2. 業務のルールの書き出し

移行で最も時間がかかりやすいのが、VBAやクエリの中に埋もれた業務のルールを取り出す作業です。たとえば「この取引先だけ締め日が違う」「この条件のときは単価を手で上書きできる」といった扱いは、画面を見ても分かりません。コードを読み、使っている人に確認しながら、一つずつ文章にしていきます。ここで書き出したルールは、移行先の要件そのものになります。

3. データの整理

Accessのデータには、長年の運用の中で、同じ取引先が別の名前で登録されている、使われなくなった項目に古い値が残っている、といった揺れがたまっていることがあります。移す前に整え、移した後に今の帳票と同じ数字が出るかを確かめます。

4. 並行稼働と切り替え

いきなりAccessを止めるのではなく、一定の期間は新旧の両方で同じ業務を処理し、結果を比べます。差が出たら、データの移し方の誤りなのか、書き出し漏れのルールなのかを確かめます。あわせて、Accessでの入力をやめる日と、Accessのファイルを読み取り専用にする日を先に決めておくと、二重の運用が長引きにくくなります。

Access移行で失敗しやすい点

失敗しやすい点起きること防ぎ方
VBAに埋もれた業務のルールの見落とし移行先で一部の取引の金額や締めの扱いが合わなくなることコードと使っている人の両方から、ルールを書き出すこと
画面の完全な再現へのこだわり費用と期間が膨らみ、移行先の良さも生かせなくなること画面ではなく、その画面で行っている業務を要件にすること
データの不整合の持ち込み移した直後から、帳票の数字が合わなくなること移す前に整え、移した後に今の帳票と突き合わせること
Excelとの往復の見落としAccessの外で行っていた加工が、移行の後に抜け落ちること書き出したデータの使い道まで、棚卸しに含めること

特に注意したいのが、画面の完全な再現です。Accessの画面には、当時の制約の中で工夫した操作や、今は使われていないボタンも含まれています。そのまま写すと、使いにくさまで移行先に持ち込むことになります。

まとめ:Access移行は「中身の棚卸し」から始める

  • Accessの限界の多くは製品の欠点ではなく、規模、同時利用、属人化、環境の変化のどれかが原因です。データベースの合計サイズは2GBからシステム オブジェクトの領域を差し引いたもの、同時ユーザー数は255が公式の仕様です。
  • Office 2019とMicrosoft 365からは64ビット版が既定になっており、古いVBAはパソコンの入れ替えで動かなくなることがあります。Accessをブラウザから使う仕組みも、今はAccessの外に求めることになります。
  • ファイルの容量、動作の重さ、ファイルの破損、作った人の不在、中身の分からないVBA、環境の変化での不具合、社外からの利用の要望、Excelとの往復、中核業務の依存の9つで、サインを確認できます。
  • 選択肢は、Accessのままでの整理、データだけを移してAccessを画面として残す方法、SaaS・ノーコードツール、Webシステムとしての作り直しの4つです。業務ごとに選びます。
  • 移行は、中身の棚卸し、業務のルールの書き出し、データの整理、並行稼働と切り替えの順に進めます。データを一か所に整えることは、AI-OCRや社内の文書検索などAIを使う準備にもなります。

Accessで作った仕組みの棚卸しから、移行先の選び方、必要な機能に絞った作り直しまで、システム開発の支援でご相談いただけます。まだ移すかどうか決めていない段階でも、お気軽にお問い合わせください。

Share

Related