そうなんだ!エクセルの関数・計算式をひらめくセンスの正体とは?
エクセルで作りたい表があるときに、どうやって作ったらいいのか?
計算式・関数がぱっと思いつく人と、いくら考えても思いつかない人の差はどこからくるのか?
その要因として、次のようなものが考えられます。
- スタート地点から考えたときに「最初の手順はこれしかあり得ない」
- 逆にゴール地点から考えたときに「最後の手順はこれしかあり得ない」
- いつ行うべきかはわからないけれど「どこかの時点でこの作業をしないといけない」
0から100の作業をしないといけないとした場合に、全てを考えるのは大変です。
ただ、
そのうちの40の工程が「これしかあり得ない」というもので埋められれば、残りの60だけを考えればよくなるのですから、明らかに、計算式を考えるのが楽になります。
そして、実際に出てくる状況では「これしかあり得ない」というケースは非常に多いです。
私の感覚だと、80%くらいの確率で「初手」「最終手」のどちらかは、すぐにわかる気がします。
そこで、どういうパターンが考えられるか、思いついたものを書いていこうと思います。
集計軸を揃える
- 集計している「期間」を揃える
-
- スタート地点となる表は「日次の集計表」
- 目的の表は「月次の集計表」
であれば、どこかの時点で「1日単位のデータを1ヶ月単位に集計する」作業をしないといけません。
- 集計している「区分」を揃える
-
- スタート地点となる表は「A社の商品コード」単位の表
- 目的の表は「B社の商品コード」単位の表
であれば、どこかの時点で「商品コードの変換」をしないといけません。
商品コードを揃える作業は、作業を進めていくうえではかなり大事な作業ですから、多くの場合は、一番最初の手順で「商品コードの変換」をする必要があるだろうと思います。
同じように、「片方が名称」「片方がコード」というような場合も、当然、どちらかに揃えないといけません。
データの「性質」を揃える
- フローとストックの違い
-
- 最初の表は、入出庫などの「フローを表している」
- 目的の表は、在庫数量などの「ストックを表している」
のであれば、どこかの時点で「フローの情報」から「ストックの情報」を計算する必要があります。
- 明細データ・集計データの違い
-
- 最初の表は、仕訳などの「明細データ」
- 目的の表は、試算表などの「集計データ」
であれば、どこかの時点で「集計」作業をする必要があります。
関数や機能による制約を考える
- ピボットテーブルを使う場合
-
ピボットテーブルを使うのであれば、その直前では「1取引1行」「取引の数だけ縦に長くなる」タイプの表を作っておく必要があります。
- sumif関数その他「関数を使って」大量のデータを処理する場合
-
相対参照が使いやすいように、作る表の形を工夫する必要があります。
例えば、元の表と計算結果の表(あるいは途中経過の表)を「同じ形にする」と相対参照が使いやすくなります。
こういうパターンを自分の中でいくつ持てるかが、計算式を自分で作れるかどうかの分かれ目です。
自分で計算式を思いつけるようになりたいのであれば、まずは、こういう「パターン」を増やしましょう。