スポンサーリンク


マネースクリプト診断

ポテンシャル年収診断


2019年10月11日

本質から学ぶExcel講座(1):Excel を本質的に学ぶとはどういうことか

小手先ではなく本質から Excel を学ぶ

生産性の差を生み出す Excel は現代人の最重要ツール

 ども勉三です。現代のサラリーマンの三種の神器とも言える、Word、Excel、PowerPoint。これらを使いこなせることは最早当たり前のスキルになってしまいました。とりわけ Excel に関しては、一般社員でも何万件ものデータを扱うことが珍しくなくなってきており、以前にも増して重要なツールとなっています。

 Word や PowerPoint は使いこなせるようになっても、見栄えや作業効率が多少上がる程度です。しかし、Excel は使いこなせるかどうかで、これまで明らかになっていなかった知見を見出すことができたり、これまで手作業で長時間かかっていた処理を自動化することができるなど、生産性に何万倍もの差がつくツールです。Excel をいかに使いこなすかが仕事の出来を左右するといっても過言ではなくなってきています。

小手先ではなく本質から Excel を学ぶ

 Excelの使い方といっても、「ある条件に合致するセルだけを集計する方法」だとか「重複を除外したリストを作る方法」といったテクニックはネットで検索すればすぐに見つかります。しかし、Excel で表を作る時にどう作れば集計や解析がしやすいのか、また、将来に渡って保守しやすくしておくにはどうすればいいのか、といった本当に大事な考え方については検索してもなかなか見つかりません。

 また、最近は投資銀行の人が書いた Excel 本が人気で、書店にいくと何冊も目にします。これらは投資銀行やコンサルでよく行う財務モデリングの作成には非常に有用で、すぐに役に立つテクニックやベストプラクティスが詰まっており参考にはなるのですが、逆に言えば投資銀行やコンサル以外の人にはあまり参考にならない部分も多いと思います。つまり、これらの書籍も一部の人には実用的ではあるのですが、本質には至っていません。

 本講座では、単なる小手先の技術だけにとどまらず、Excel の最も効果的な使い方を本質から解説していきます。巷にある多くの Excel ハウツー本やウェブサイトが表面的な小手先の技術に留まっているのは、彼らがソフトウェアエンジニアリング(ざっくり言うとプログラミング)やデータベースの考え方を知らず、それらの包括的な観点から Excel を捉えることができないからです。それでは浅い見方しかできません。

 実は、Excel で何かを作るというのは、ソフトウェアを開発しているようなものです。ですので、その正しい設計や活用にはソフトウェアエンジニアリングの正しい知識が本来必要です。そういった知識が無くても感覚で使えるのが Excel の利点ではありますが、それが逆に本来正しくない使い方の原因になっているのも事実です。

 前置きが長くなってしまいましたが、以降は Excel を本質的に学ぶ上で重要となる主なトピックを挙げていきます。これらのトピックについて、詳細は今後の連載で個別に取り上げていく予定です。まずは、どういったことが本講座で学べるのかを俯瞰的に眺めて頂ければと思います。

本講座で取り上げる予定のトピック(一部)

モデルとビューの分離

 ソフトウェアエンジニアリングの世界で常識となっている有名な原則に「モデルとビューの分離」というものがあります。これは、データ構造やその関係性といった「モデル」の部分と、それをユーザに分かりやすく表示するための「ビュー」の部分は、可能な限り分離した方が保守や拡張がしやすいソフトになるという経験則です。現代の多くのソフトウェアはこの考えに基づいて設計されています。

 なぜかというと、このようにしてソフトウェアを設計すれば、データの集計の仕方や見せ方を変えるだけであればビューだけを変更し、モデルを変更する必要がないからです。データの集計の仕方や見せ方というのは頻繁に変わるものなので、その部分だけを独立させれば、変更の影響を最小限に留めることができます。

 一方で、Excel はいわばモデルとビューが最初から一体になったようなソフトと言えます。モデルである二次元配列(シート)には、スタイルやユーザーインターフェイスが付属しており、ビューとしてもそのまま扱うことができます。これは Excel の便利で使いやすい性質ではあるのですが、そのためかモデルとビューが強く結合したワークシートを作成してしまい、非常に扱いづらいものになってしまうケースが多々見受けられます。

 本講座では、このモデルとビューの分離について基本となる考えを紹介し、その上で実用上どのようにワークブックを設計するのが良いのかを解説予定です。

保守性を高めるために

 Excel を使う上で気を付けるべきことは「保守」のしやすさです。Excel でも一般のソフトウェアでも何でもそうですが、一度作って終わりということは稀です。データの数や項目が増えたり、集計条件を変更する必要が生じたり、あるいは新しい機能を追加することになった際に、変更を加えて使い続けられることが重要になります。

 要件や仕様の変更に柔軟な設計をするためには、ワークブックやシートの構成にある程度の一般化・抽象化が必要になります。しかし、これにより逆にセルの数式が分かりにくくなりロジックを追うのが難しくなるという負の側面もあります。この「一般化」と「分かりやすさ」のトレードオフの程よいバランスを見つけるのが、保守性の高い Excel ワークブックを作る上では重要となります。

 本講座では、ソフトウェアの保守性という観点から、どのようにワークブックを設計すれば、変更に柔軟で誰が見ても分かりやすい Excel ができるのかを解説していきます。

Excelとソフトウェアテスト

 ネット上では「Excelで計算を自動化したら、上司に電卓で検算を要求された」という話がネタとして扱われています。しかし、これは結構本質的な問題を突いているのではないかと勉三は思います。

 もちろん、Excel 自体は指示した計算を間違えないでしょう。ですが、その指示をするのは人間です。人間は間違える可能性があります。最初に作ったときは正しく動いていても、拡張を加えるうちに参照がずれて計算結果が想定したものになっていなかったというのは、よくあることだと思います。

 Excel がビジネスや研究開発の現場で多用されるようになると、Excel の結果の正しさをどう担保するかは以前にも増して重要性を帯びてきます。例えば、M&Aのバリュエーションで「Excelのシートにミスがあり、金額が1桁違うことが分かりました」ではシャレになりません。ですがこのようなミスをした、あるいはしかけた人は結構いるのではないでしょうか。

 これも小手先の Excel というツールだけで捉えて議論すると本質を見落とします。この問題は、ソフトウェアテストの領域であり、一般のソフトウェアのテストの枠組みで考えることができます。本講座では、どのように Excel の計算結果を担保すべきかを、ソフトウェアテストの観点から解説します。

次回予告

 いかがでしたでしょうか。次回からは今回紹介したトピックについて1つずつ、詳細に解説していきたいと思います

タグ:Excel講座

スポンサーリンク




posted by 勉三 at 23:35 | Comment(0) | TrackBack(0) | IT
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/186672284
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック