IF-現場運営表をもっと便利に

ceb1c1ca331c1cf281ef6c30d3a587d5_m

VLOOKUP-現場運営表作りの必需品

では、現場運営表作りを半自動化して、ヒューマンエラーによる

1人多かった!やばい!

はたまた

あれ!?●●さん、今日じゃなかったっけ!?

という繁忙期あるある(じゃダメなんですが…)を無くそう!

と言いました。

 

その中で

※このセルは、VLOOKUP関数と、別の関数を同時に使用するので、改めてご説明します。

と一部の機能を棚上げしてしまったので、今回はそのご説明です。

 

前提条件

前回同様、顧客名簿をExcelもしくはGoogleスプレッドシートで作っている場合に、今回の方法が威力を発揮します。

イメージはこんな感じ。

%e9%a1%a7%e5%ae%a2%e3%83%aa%e3%82%b9%e3%83%88-google-%e3%82%b9%e3%83%97%e3%83%ac%e3%83%83%e3%83%89%e3%82%b7%e3%83%bc%e3%83%88

 

完成イメージ

顧客Noを打ち込むだけで、所持器材などが自動的に表示される様なテンプレートを作成します。

%e7%8f%be%e5%a0%b4%e9%81%8b%e5%96%b6%e8%a1%a8-google-%e3%82%b9%e3%83%97%e3%83%ac%e3%83%83%e3%83%89%e3%82%b7%e3%83%bc%e3%83%88

前回の記事ではこのうち、器材に関する情報の自動入力が完成していませんでした。

 

使用する関数-IF

Excelやスプレッドシートには様々な関数、つまり、ある条件を与えると、特定の結果を返してくれる便利なものが予め実装されています。

今回使用するのはIFという関数です。

 

Excelを提供するMicrosoftによると

IF 関数は Excel で頻繁に使用される関数の 1 つであり、ある値と期待値を論理的に比較できます。

MicrosoftOffice IF関数より

スプレッドシートを提供するGoogleによれば

論理式が TRUE の場合はある値を返し、FALSE の場合は別の値を返します。

Googleドキュメントエディタヘルプ IFより

つまり、条件分岐を実現する関数です。

実例を挙げて見て見ましょう。

%e7%8f%be%e5%a0%b4%e9%81%8b%e5%96%b6%e8%a1%a8-google-%e3%82%b9%e3%83%97%e3%83%ac%e3%83%83%e3%83%89%e3%82%b7%e3%83%bc%e3%83%88

灰色のセル(=場所)に『=IF(A4=A7,”YES”,”NO”)』と打ち込むことで、与えられた条件を判断し、正しい場合、異なる場合、それぞれの結果を表示します。

この関数を訳してみると

“A4″の値(山田)と”A7″の値(山田)が等しい、これが正しければ”YES”、間違っていれば”NO”と表示しなさい

という意味です。

 

最初の条件を判断する部分には、等号や不等号だけでなく、計算式や関数などを含めることも出来ます。

また、結果を返す部分も、文字列だけでなく、計算式や関数を入れることが出来ます。

 

実装

今回は1つのファイルに”顧客リスト”と”現場運営表”というシートが存在するとして考えます。
※別ファイルの場合、別の関数や構文が出てきてしまうので…

2

2

 

 

重器、マスク、フィンに関しては参加者が所持していてレンタル不要の場合に『-』、持っておらずレンタルの準備が必要な場合に『●』を表示します。

尚、これらはフリーサイズ、もしくはサイズがあっても3種類程度なのでこの様にしています。

 

ウエットやドライスーツ、ブーツに関しては、レンタルの準備が必要な場合にはサイズを表示する様にします。

 

重器・マスク・フィン

前回のVLOOKUPも利用します。

構文は以下の通り。

“=IF(VLOOKUP(参加者のNo,’顧客リスト’!A2:V4,器材所持を表す列番号,FALSE)=””,”●”,”-”)”

ここで、”‘顧客リスト’!”は『顧客リストというシートの』という意味です。

”●●=”””というのは、●●が空白なら、という意味です。

尚、全てを手入力する必要は無く、”FALSE”と構文を区切る”,(カンマ)”、正誤の結果を表す文字列以外は該当の場所をクリック(セルの場合)またはドラッグ(範囲の場合)することで自動的に入力されます。

これを踏まえて各項目を見てみましょう。

1:”=IF(VLOOKUP(A6,’顧客リスト’!A2:V4,17,FALSE)=””,”●”,”-”)”

2:”=IF(VLOOKUP(A6,’顧客リスト’!A2:V4,18,FALSE)=””,”●”,”-”)”

3:”=IF(VLOOKUP(A6,’顧客リスト’!A2:V4,21,FALSE)=””,”●”,”-”)”

以上の通りです。

 

スーツ・ブーツ

この項目ではもう一工夫して、結果を返す際に、もう一度VLOOKUP関数を使用します。

構文は以下の通り。

“=IF(VLOOKUP(参加者のNo,’顧客リスト’!A2:V4,器材所持を表す列番号,FALSE)=””,VLOOKUP(参加者のNo,’顧客リスト’!A2:V4,身長や体重を表す列番号,FALSE),”-”)”

具体的にはこちら。

4:”=IF(VLOOKUP(A6,’顧客リスト’!A2:V4,17,FALSE)=””,VLOOKUP(A6,’顧客リスト’!A2:V4,14,FALSE),”-”)”

5:”=IF(VLOOKUP(A6,’顧客リスト’!A2:V4,17,FALSE)=””,VLOOKUP(A6,’顧客リスト’!A2:V4,15,FALSE),”-”)”

6:”=IF(VLOOKUP(A6,’顧客リスト’!A2:V4,17,FALSE)=””,VLOOKUP(A6,’顧客リスト’!A2:V4,16,FALSE),”-”)”

以上の通りです。

 

参考-重器やフィンのサイズも自動表示にする

フィンのサイズ、S・M・Lの3サイズをレンタルで準備している場合が多いでしょうか。

そのサイズ判定までを自動化するのであれば、結果を返す際に計算を噛ませ、さらにIF関数を用いて条件分岐することで、実現可能です。

~例~
足のサイズが24cm以下はS、25cm~26cmはM、27cm以上はL
の場合

=IF(VLOOKUP(A6,’顧客リスト’!A2:V4,21,FALSE)=””,IF(VLOOKUP(A6,’顧客リスト’!A2:V4,16,FALSE)<25,”S”,IF(VLOOKUP(A6,’顧客リスト’!A2:V4,16,FALSE)<27,”M”,”L”)),”-”)

こんな感じです。

尚、入れ子になった複雑なIF関数は、IFSという関数で表現することも出来ます。
これについてはまた詳しくご説明しますね!

<追記>

IFS-レンタル器材のサイズ判定を自動化

 

現場運営を考えるとレンタルフィンの在庫数と、当日の必要数に応じて足のサイズとフィンのサイズが1対1対応で無い場合も十分に考えられると思うので、その辺りまで自動化するためには、かなりの工夫が必要だと思います。BCも同様ですね。

また、BCやウエットの場合は、身長と体重、性別から総合的に判断する必要があるので、これもなかなか難しいでしょう。

出来ないことは無いと思いますが、全部自動化してしまうと、融通の利かなさ、というデメリットも出てくるので、自分は最初にご紹介した形が一番使いやすく感じています。

 

なんでもパソコン、ではなく、パソコンと人の手、双方の良いところを上手く使い分けて、効率化と正確性、柔軟性を一気に実現してみませんか?

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です