はもちくわ

コードについて自分なりの解釈を書いてます。

【Excel】を使った書類管理(その①)

「会社Excelあるある」だと思いますが、通常業務は専用システムやソフトではなく、Excelでファイル管理されがちではないですか?

 

そして、同じ書式の書類を新しく作成したら、ファイル名を変えて(日付など)保存し、フォルダに分けて管理する方法を取っていませんか?
まるで紙の書類をバインダーに分けて綴じて、キャビネットや引き出しに保存するかのようにです。

 

確かに、紙の書類の実物は存在しませんから事務所はスッキリ。実物を管理するよりも、たくさんの書類をPC内で管理ができます。書類が多くなってきても、名前検索できるので取り出せそうです。とてもいい方法でPCを有効活用しているように見えます。

 

しかし、PC内の容量を収納スペースと考えた場合どうでしょうか?
容量がいっぱいになれば外付けのハードディスクが必要になります。それは現実にキャビネットがいっぱいになって買い足すのと一緒だと思いませんか?それに最近はクラウドに保存することも多いです。そうなると容量を増やすのもタダじゃない。

 

「いやいや、キャビネットとは、大きさ、金額が全然違うから比較にならない!」と考えますか?

私は、実際の事務所内のスペースを効率よく使う事と、PC内のスペースを効率よく使う事は一緒だと思います。
1〜2年で終わるような会社なら別に考えなくてもいいと思いますが、基本、会社は業務が永続的に続くと考えるべきではないかと思うんですよね。
なので、なるべく余裕を持って回していく必要があります。それに余裕があれば、急な新規案件にも柔軟に対応できたりと自由度も広がりますし、なにより効率化する為には、正確な業務把握やリスク回避がされた改善計画が必要です。
ということは、使いやすさにもつながります。

 

私が経験してきたExcel書類管理の使いにくさを例にして上げると...

  • フォルダが増えすぎて収拾がつかない
  • 保存ルールがあってもミスしてファイルが見つからない
  • 数字やスペースの全角、半角混在でファイルやデータが統一できない
  • 関数が壊れる
  • 管理者や作成者しかファイルを触れず負担が集中する
  • ファイル容量が大きく重い
  • 関数で開くたびにリンクして内容が変わる

 

どうですか?1つ、2つは思い当たることがありませんでしたか?

 

こういったリスクを回避するため、よく見られる方法が、しっかりルールを守らせ、ミスをしないように厳しく人を管理しようとする前時代的な方法です。

例えば。。。

  • 確認業務回数を増やして業務負担を上げる
  • 間違えた人を吊し上げ、さらし者にし、全体に注意喚起
  • 関数を盛り込み作成者しか変更できない
  • できる人だけにやらせ、業務負担を集中させる

 

いや〜。怖いです。

結局、人の能力に頼る前時代的なやり方に立ち返ると、便利なPCを使っているのに、紙より業務量が増えてしまったり、使える人に負担が偏ったりするんです。

PCの使い方を間違える典型だと思います。便利にPCを使うなら、ミスを『させない』仕組みをつくることを考えるべきではないでしょうか。工場などの作業でヒューマンエラーを回避する「ポカヨケ」と一緒です。ミスはあるものという前提でミスを回避する仕組みを作るのです。

 

しかし、それを実現するためには、段階を踏む必要があります。

これから順番に記事に書いていきたいと思います。

 

今回は、同じ書式の書類を管理する考え方を例をあげながら説明していきます。

 

まずは、従業員の雇用契約書をイメージしてください。
従業員の名前と条件が契約書に記載してあります。
書式は全員同じで、契約更新によって時系列で増える書類とします。

一般的にPCで管理するとした場合を図解すると

f:id:hamochikuwa440:20210529213017p:plain

 

よくあるパターンだと思います。みなさんの会社ではどうでしょうか?
「いやいや、契約書は50音別管理だよ!」とお思いの方、分類方法は少し置いておいてください。
PC管理にする場合、最終的にどちらでも追える仕組みにするのが正解だと思います。ひとまずフォルダでの管理イメージとして捉えてください。

 

さて、この管理方法でのファイル自体のイメージを図にすると

f:id:hamochikuwa440:20210529223514p:plain

このようになります。内容は契約者や条件、期間などはそれぞれ違いますが、その他の構成は一緒です。書類の作成方法としては、過去のファイルをコピーして、新情報に修正する方法が取られると思います。

ファイル自体をコピーできるので、簡単に作成できそうですが、情報変更する際に間違いが発生するかもしれません。
入力補助機能をつけて、ある程度の入力ミスに対してのガードはできますが、情報を目で確認して慎重に入力することが求められます。

また、図では2つのファイルで表現していますが、実際は該当人数分の書類があり、契約更新があればその都度増えていき、従業員が0人にならない限り増え続けます。
そして、間違い防止のために入力補助の関数を増やせば、ファイル容量も増えてしまいます。回避するためにコピーして値貼り付けをその都度やる方法も経験したことありますが、大変面倒くさいです。

 

そこで考え方を変えます。PCの中では「紙の書類」と一緒である必要はありません。入力補助機能のついたファイルを書類の数だけ増やさなくてもいいのです。書類書式のファイルは、書類をPC画面で見るための「フォーマット」で、更新データだけを別に保存します。イメージを図にしますと。

f:id:hamochikuwa440:20210529225744p:plain

 

書類を作成するために必要な情報だけをデータベースとして1行追加してファイルに残し、書類ファイルはそれを確認するためのフォーマットとするのです。こうすることによって、ファイルの数は圧倒的に少なくなります。ファイルごとに書類を残せば、当然、書類が増えるたびに1ファイル分の容量が増えますが、これですと、1行分の容量だけで済みます。

ファイル自体を探して見るのも、フォーマットを通して確認するのも、PC画面で表示する結果は何も変わりません。ファイルデータそのもので保存しておく必要はなく、更新データがしっかりあればいいのです。

また、過去のデータがデータベースにあるので、それを利用して契約の重複を防ぐなど、入力補助機能をフォーマットに入れることもできます。

 

関数の得意な方はIndexMatch、最近使いやすくなったVlookupなんかを使って作ってみてもいいと思いますが、関数は参照場所が変わるだけで崩れてしまいます。やはり、しっかり理解して管理できる人がいないと関数管理は難しいです。

そこでおすすめなのがVBAです。見て分かる人がいないとそれこそ管理が難しいのでは??と思われがちですが、それは作り方である程度回避できます。それにシートをいくら触ってもコードは触れないので、関数よりよっぽど崩れにくいものです。

次からはVBAについて書いていきます。

今回はここまで。