「同僚が数式を消してた」
「日付入力欄に名前が入力されてた」
Excelを共同で使ってるとあるあるですよね。
僕もExcelをデータベース的に使うのはめちゃくちゃ好きなんですが、複数人で運用すると「データが壊れる問題」はどうしても避けられない。
そもそもExcelをデータベースとして使うなら守るべきルールがあって、セル結合しない、1つのセルには1つの値だけ入れる、キー列(IDなど)を追加する、1行目に列名を入れる。
これをチーム全員が守れれば問題ないんですが。誰かがセル結合する。誰かが1つのセルに複数の情報を詰め込む。ルールを知らない人が触った瞬間にデータが崩壊する。
つまりExcelデータベースは「ルールを人の意識で管理する」仕組みなんですよ。
とはいえExcelもめちゃくちゃいいですよ。でもルール徹底が大事。でもそんなルールをほかの人が全然守ってくれないという場合は別なんですよね。
ここで紹介したいのが『SharePointリスト』(今ではListという単独のアプリになってたりします)。M365契約してたら追加費用なしで使える。
リストが強いのは、さっきのルールが「仕組みとして強制される」ところなんですよね。そもそもセル結合という概念がない。1つのフィールドには1つの値しか入らない構造。ID列は自動で付与される。列名は必須で最初に定義する。
つまり人に「ルール守ってね」とお願いしなくても、構造的にデータが壊れないんですよね。
さらに強力なのが入力時点での制限で、Excelでいう「データの入力規則」に近い仕組みなんですが、列ごとにデータ型を指定できる。
たとえば日付型に設定した列にはテキストを入力できない。選択肢型にすれば決められた値以外は入れられない。数値型にすれば文字は弾かれる。
入力する時点でデータを守れるので「後から見たらデータがぐちゃぐちゃだった」がなくなるんですよね。
とはいえExcelデータベースが悪いわけじゃないです。僕も普通に好きで使ってます。
自由度が高いから使い勝手がいい場面は結構あるんですよね。セルにコメントをサッと入れられるし、データからグラフを瞬時に表示できるし、ちょっとした計算や分析をその場でできる柔軟さはExcelならではの強み。
大事なのは使い分けること。
個人の分析やデータ分析も同時に行いたいとき、柔軟な作業ならExcel。複数人でデータを更新・蓄積するならSharePointリスト。
で、そのデータを取り出して分析などしたいときはExcelのパワークエリを使うとか、Power Automateを使うなど色々な手段があります。
「また誰かにファイル壊された」ってストレス感じてる人はリストへの移行をぜひ試してみてください。