Accessって便利ですよね。
ただし、使い方を間違えると組織が大変なことになってしまいます。
私の経験談を交えながら、Accessでやってはいけない運用をご紹介します。
フォームを使った作り込みは災害の元

例えば上記がフォームを用いたAccessの活用例です。
データを入力する項目が見やすい形で整理されていて、一見とても良さそうに見えます。
企業で実際に活用する際は、こういったフォームを社内SEもしくは外注で作成し、このフォームを用いて、派遣さんやパートさんがデータを入力していく形になるでしょう。
しかし、これがヤバい
一体何が問題なのでしょうか?
問題点1:データ入力の効率が悪い
こういった形にしてしまった場合、基本的に1件ずつの手打ち入力が前提になります。
例えば、支店を合併することになって2000件のデータを入力することになった場合、手打ちで行いますか?
もしかしたら、2000件であれば社内SEさんがデータベースを上手く統合してくれるかもしれません。
しかし、これが大口のお客様の受注を得て、相手先企業の支店100件のデータだった場合は?
100件だと社内SEさんはめんどくさがるかもしれません。そういう人に限って色々頼まれて忙しいものなのです。
そういうわけで、パートさん達で対応せざるを得ない状況となります。
しかし、手打ちは面倒くさい。
それくらい手打ちじゃなくて、インポートや追加クエリ、ユニオンクエリなどでなんとでもなると思うかもしれません。
しかし、フォームで打つことに慣れきって、Accessのちゃんとした使い方を理解していない人は、その程度の作業も出来なくなっているのです。
大したことではないように思えるかもしれませんが、実際に発生する”非効率”というトラブルは、そのような内容が積み重なったものなのです。
問題点2:フォームやテーブルの改善が進まない
この問題は簡単に言うと”属人化”です。
フォームを作った社内SEさん、もしくは外注業者さんしか全容が分からない状態になることです。
これはかなり頻発して発生します。
クエリとマクロだけで組まれたAccessは、ある意味抽出条件やデータの作り方は見れば判る状態と言えます。
しかし、フォームで組まれた内容を抽出しようとした場合、VBAやらSQLやらを読み解く必要があります。
もしくはクエリに組まれている内容が適用されているかもしれないし、実はテーブルで日付をコントロールしてました、なんてこともありました。
加えて、社内SEさんは退職しちゃいましたー、外注業者さんはお金掛かるので駄目ですー、なんとか予算確保しても外注業者さんでも担当の人はもうおりませんー……なんてことが発生するのです。
……正直、勘弁してください
Excelで無駄にマクロを組むな、と言われるのと同じで
Accessで無駄にフォームを使うのは良くない、と言うお話でした。
理由は2点
- 非効率である
- 属人化につながる
ぜひ頭の片隅に置いておいてください。