Excelとプログラミングはすごく似ている

Excelで資料を作成する作業と、プログラミングの作業は、基本的にやっていることが似ていると感じます。

なので、Excelでわかりやすく資料を作成するノウハウを持っている人は、プログラミングの習得も早いと思いますし、逆にExcelが苦手でもプログラミングがある程度できている人なら、コツを掴めばExcelのスキルの習得も早いのではないかと思います。

変数

プログラミングを学習するときに必ず初めの方で習うのが変数です。
変数は一言でいえばデータの入れ物に名前を付けたもので、プログラミングをするうえでは欠かせない存在です。

一方、Excelにも変数があります。それは、セルです。
Excelでは、セルがデータの入れ物になっています。

プログラミングでは、変数に名前を付けてデータを入れたら、変数を使って計算の処理をしたりすることができます。
例えばこんな感じ

a = 10
b = 20
c = a + b

ここでは「a」と「b」と「c」が変数です。この例では、結果としてcという変数に30が入ることになります。

Excelの場合、例えばA1セルに10と書いて、b1セルに20と書いて、c1セルに「= A1 + B1」と書けば、c1セルでは30と表示されます。
こう見ると、セルの一つ一つが変数になっていることが分かります。

厳密に同じというわけではありませんが、このような発想を持っていると、Excelができる人がプログラミングを学ぶとき、あるいはプログラミングができる人がExcelを学ぶときに理解を早めるきっかけになるのではないかと思います。

配列

プログラミングでは、複数のデータをまとめた管理したい場合、配列というものをよく使用します。

配列は例えばこんな感じで書きます。

array = [1, 2, 3, 4, 5]

こうすると、arrayという変数1つで、5つ分のデータが管理できます。
要は、通常の変数で管理する場合、5つのデータを管理するには5つの変数が必要ですが、それだと不便なのでまとめて扱える仕組みとして用意されているのが配列です。

Excelの場合、セルの一つ一つを変数だとみなせば、行や列が配列に該当すると考えることができます。

配列はプログラミング初学者が躓きやすいところでもあるのですが、Excelの行や列、あるいは2次元配列の場合は表だと考えると理解しやすいかと思います。

関数

プログラミングには関数やメソッドといった処理をまとめておくための機能があります。
Excelにも初めから使える関数がありますが、あれはまさにプログラミングにおける関数と同じです。
特定の関数に対して、引数を与えて戻り値を受け取る。
この考え方はプログラミングでもExcelでも同じなので、Excelで関数を使いこなしている人は、プログラミングでの関数の理解も早いことが期待できます。

効率よく、そして分かりやすく作るには

プログラミングも、Excelの資料も、いかに効率よく、そしていかに分かりやすく作れるかが結構大事です。

例えば、税抜きの金額に消費税を掛けて消費税込みの金額を出したい時

a = 1000 * 1.1
b = 1500 * 1.1
c = 1800 * 1.1

のように書けば税率10%での税込みの金額が出ます。
でも、これだと「1.1」という数値は何を表しているのかいまいち分からないし、後々税率が変更されたときに修正箇所が多くなりそうです。

例えばこんな風に改善することができます。

tax_rate = 1.1
a = 1000 * tax_rate
b = 1500 * tax_rate
c = 1800 * tax_rate

税率を別の変数(定数)で持たせておくと、何をしているか分かりやすくなり、あとで税率の変更があっても修正箇所は少なくて済みます。

これはExcelでも全く同じことが言えます。

Excelにはセルに名前を付ける機能があるのですが、特定のセルに対して「消費税」という名前を付けて、そのセルに「1.1」と値をセットしておくとします。

そうすると、単価を掛けて税込み金額を出したい時、「=A1 * 消費税」のようにすれば計算することができます。
こうしておけば、式の内容が分かりやすくなり、また修正も楽になります。

Excelを使いこなすにはプログラミング的な思考が必要

上で紹介した機能は一例です。
Excelにはとても多くの機能があります。
私も把握できていないものも多くあります。
全ての機能を使いこなせている人はおそらくとても少ないと思います。

ただ、機能を多く知っているとExcelを使いこなせるかというと、そんなことはありません。

・資料を分かりやすく作る
・効率よく作る
・修正が発生したときに少ない修正で済むようにする
・入力時にミスが極力少なくなるようにする
・後で検索がしやすいように作る

このような視点を持って、それを実現するために機能をうまく使うことが大切です。

上で述べた内容は、プログラミングにおいても大事な内容です。
Excelで資料を作成するときに、上で述べた内容を意識することができているのなら、プログラミングを学ぶときにも大きな武器になります。

逆に、プログラミングのスキルがあって、プログラムをうまく作るコツを心得ている人は、その考えをそのままExcelでの資料作成に活かすことができます。

Excelとプログラミングを同じ視点から考えることで、相互作用的に両方を効率よく学ぶことができるようになるのではないかと思います。

自分で調べて試すことができるか

ここまで、Excelとプログラムの共通点や、効率よくつくためのコツの共通点を書いてきましたが、Excelとプログラミングで、上達が早いかどうかにおいても共通点があります。

それは、自分で積極的に調べて、実際に手を動かしながら試すことができるかどうかです。

Excelにはたくさんの機能がありますが、機能をたくさん覚えようとするよりも、自分で実際に何かを作る中で、不便に感じたことを自分で調べて試行錯誤しながら解決していく人の方が上達が早いです。

プログラミングも、自分で作りたいプログラムを考えて、それを作る中で自分で積極的に調べていく中でどんどん上達してきます。

自分から興味を持って積極的に動ける人が成長が早い、というのは、Excelやプログラミングに限らず、全ての分野において共通の要素といえるでしょう。

サポートいただくとめちゃくちゃ喜びます。素敵なコンテンツを発信できるように使わせていただきます。