Excelの行数、列数の限界

業務でエクセル excel を使うことが多いと思います。エクセルに限界を感じたことはありませんか?

エクセルで貸し出し管理を運用していたが、貸し出し件数が多くなりエクセルではどうにもならなくなったと相談を受けたことがあります。はじめは数百件、増えても1000件程度の規模を想定したようです。しかし運用を開始してしばらくしないうちに管理件数は増えていき、数万件に達したそうです。はじめは順調そうに見えていたエクセルでの運用ですが、件数が増えるにつれてエクセルの動作そのものが遅くなり、度々止まったかのようになってしまいました。PCのスペックはi5やi7といったCPUを使っているので、決して低スペックではありません。マイクロソフトが言うエクセルのテーブルの最大 1,048,576 行、16,384 列には達していないにもかかわらず、パフォーマンスに影響が及んでいます。理論上(プログラム上)は前出の行数、列数を扱えるのでしょうが、実際にPCのパフォーマンスや表に含まれる関数式等によって、許容できる速度の範囲で扱うことのできる行列数はずっと少ないのだと言えます。

運用が止まってしまわないうちに、急遽DBシステムを構築しました。これまでのエクセル管理からシステムへの移行は、既存データが正規化されていないことと、不整合なレコードを修正しながらのマイグレーションに大変苦労しました。エクセルでは誰でも扱いやすい反面、データ入力の制限が弱くレコード間の制約も付けられないとデータが不整合になりやすいのです。例えば貸し出し管理であれば、ある一つの端末が二人のお客様に貸し出していることになっている間違えも生じていました。貸し出し履歴をもとに利用料金を請求するのですが、エンドユーザーへの請求金額の間違えはビジネスそのものに大きな影響を及ぼすことになります。運用構築の初期の段階から、システム化を取り入れておけばよかったと、当の担当者は言っていました。

スタートアップのビジネスではよく、「ビジネス規模が大きくなってからシステム化を検討しよう」という考えがあるようです。規模が大きくなってからでは手遅れであったり、システム化に余計なコストがかかることになります。エクセル管理ではなく、最低限の機能を持ったDBシステムを用意し、ビジネスの成長に合わせてシステムも成長していくのが良いと考えます。