前回「思い込み」が効率化の妨げになる可能性について考えましたが、「思い込み」を脱しても、そもそもどうやって効率化したらよいかわからない可能性もあります。Excelで、「こうしたい」ということを実現するためのステップについて検討してみます。

Excelを「使いこなせる」とはどういう状態を指すか?

前回「思い込み」があると、効率化の妨げになることがあるという話を書きましたが、その「思い込み」を脱することさえできれば、あとは楽々と効率化できるのか?

問題点には気付いたけれども、どうやって解決していいかわからない、という状況になる可能性は十分にあります。

例えば、Excelで資料作成していて効率的ではないと感じているけれど、「こうしたい」という状態をどうすれば実現できるのかわからない、という方は多いのではないでしょうか。

そういうときにに多くの方は「Excelを使いこなせていない」と感じるのではないかと。

では逆に「Excelを使いこなせている」というのは具体的にどのような状態を指すのでしょうか?

個人的な意見ではありますが、

自分が「やりたいこと」を実現するために必要な機能を見つけ出して、組み合わせることができる

という状態が「使いこなせている」ということだと考えています。

多くの機能を知っている方がよいとは思いますが、たとえ知っていてもそれらの機能をうまく組み合わせることができなければ、それは「使いこなしている」とはいえないでしょう。

「やりたいこと」を実現するために、必要な手順を自分の言葉で説明する

とはいえ、慣れていない方にとっては、どのように機能を組み合わせるのか、まったく思いつかない、とことも多いのではないでしょうか。

そういったときに重要なのは、「やりたいこと」を実現するまでの手順・ステップを、自分の言葉で説明することです。

手順を自分の言葉に落とし込む → それを実現する機能がないか探してみる

というステップを踏むと、Excelでできるかどうかがはっきりします。

具体的にどのように機能を見つけていくか、一例を挙げます。

例として、勘定科目と補助科目を変換する作業を取り上げます。

現預金について、勘定科目が「現金及び預金」となっていて、補助科目に預金種類・銀行支店名が入っているデータがあるとします。

これを、変換前の勘定科目が「現金及び預金」の時だけ、

  • 変換後の勘定科目に、変換前の「現金及び預金」の「補助科目」を表示させる
  • 変換後の勘定科目が預金科目の時だけ(現金は除く)、補助科目に変換後の勘定科目を表示させる

という変換作業です。

勘定科目のところは、IF関数を使って、

=IF(A3=”現金及び預金”,B3,A3)

という式を入れれば簡単にできますが、問題は補助科目です。

A列が「現金及び預金」の時にD列を表示するという式

=IF(A3=”現金及び預金”,D3,””)

をE列に入力すると、変換後の現金の補助科目に「現金」と表示されてしまい、今回の目的通りになりません。

次に考えたのが、「VLOOKUP関数を使えないか?」と。

ところが、この方法ではすべての勘定科目と補助科目の組み合わせリストを作る必要があり、かなり面倒です。

そこで次にどのように考えるか。

変換後の勘定科目のうち、対象となる科目を眺めていると、左側の4文字が

  • 当座預金
  • 普通預金
  • 定期預金

のいずれかであることに気付きます。

セルの文字列の左側4文字であれば、LEFT関数で取り出せるはず。ということで、G列に

=LEFT(D3,4)

という式を入れて、下にコピーして、文字を取り出してみます。

次に、その取り出した4文字が、「当座預金・普通預金・定期預金」のいずれかに一致するかチェックする方法はないかと考えるわけです。

「一致する」ということで調べると、MATCH関数というのがあることがわかります。

このMATCH関数、対象となるリストの何番目にその文字列があるか教えてくれるのですが、もしリストにない場合はエラーになります。

そこで、J列に「当座預金、普通預金、定期預金」というリストを作った上で、H列に、

=MATCH(G3,$J$3:$J$5,0)

という式を入れて、下にコピーします。

ここまでの作業で、

  • 補助科目を表示する行:H列に数字が表示
  • 補助科目を表示しない行:H列に「#N/A」というエラーが表示

という形にすることができました。

最後に考えるのは、エラーの時とそうでないときで処理を分けられないか?

IFERROR関数というのがありますが、エラーの時の処理しか指定できないので、残念ながら今回は使えません。

「セルがエラーかどうか調べてくれる関数があれば、IF関数で場合分けできるのに。」

このように考えることができれば、ISERROR関数を見つけることができるでしょう。

E列に

=IF(ISERROR(H3),””,D3)

という式を入れて下にコピーしてみましょう。

H列がエラーの場合、E列は空白、それ以外の場合はD列の内容が表示されます。

何事も使いこなすにはトレーニングが必要

今回は関数を組み合わせるという事例でしたが、実際には関数以外の機能を組み合わせるケースも多々あります。

今回はいろいろ試しながら「こんなことできないか、あんなことできる機能はないか」といったやり方でしたが、慣れてくれば、最初に頭の中で全体の流れをイメージして作れるようになってきます。

ただそうした状態になるには、試行錯誤を数多く経験する必要があります。

自分自身で解決できるケースが増えると、それは自分にとっての「引出し」となって、次に困ったときに遭遇したときにも、活用できる知識となります。

そうなるためにも、自分の力で試してみる(=トレーニング)機会を数多く持つことが欠かせません。

今回の事例にしても、もっとスマートな方法を見つけ出せる方は、数多くいらっしゃると思います。

インプットを増やしていけば、そうした方法に出会う機会も増えますので、気付いたときに改善できれば、さらに自分の「引出し」を増やせます。

大事なのは、今回のようなプロセスをとにかく自分でやってみること。

どんなことであっても、そうした積み重ねにより初めて「使いこなせる」という状態に到達することができます。

「Excel使いこなせない」という感覚をお持ちの方は、まずは簡単な事例から、自分の言葉で解決までの手順を考えてみるという機会を増やしてみてはいかがでしょうか。