拓VLOOKUP-現場運営表作りの必需品では、現場運営表作りを半自動化して、ヒューマンエラーによる1人多かった!やばい!はたまたあれ!?●●さん、今日じゃなかったっけ!?という繁忙期あるある(じゃダメなんですが...)を無くそう!と言いました。その中で※このセルは、VLOOKUP関数と、別の関数を同時に使用するので、改めてご説明します。ExcelもしくはGoogleスプレッドシートで作っている場合に、今回の方法が威力を発揮します。イメージはこんな感じ。完成イメージ顧客Noを打ち込むだけで、所持器材などが自動的に表示される様なテンプレートを作成します。前回の記事ではこのうち、器材に関する情報の自動入力が完成していませんでした。使用する関数-IFExcelやスプレッドシートには様々な関数、つまり、ある条件を与えると、特定の結果を返してくれる便利なものが予め実装されています。今回使用するのはIFという関数です。あり、ある値と期待値を論理的に比較できます。場合は別の値を返します。IFよりつまり、条件分岐を実現する関数です。実例を挙げて見て見ましょう。灰色のセル(=場所)に『=IF(A4=A7,”YES”,”NO”)』と打ち込むことで、与えられた条件を判断し、正しい場合、異なる場合、それぞれの結果を表示します。この関数を訳してみると“A4′′の値(山田)と”A7′′の値(山田)が等しい、これが正しければ”YES”、間違っていれば”NO”と表示しなさいという意味です。最初の条件を判断する部分には、等号や不等号だけでなく、計算式や関数などを含めることも出来ます。結果を返す部分も、文字列だけでなく、計算式や関数を入れることが出来ます。今回は1つのファイルに”顧客リスト”と”現場運営表”というシートが存在するとして考えます。※別ファイルの場合、別の関数や構文が出てきてしまうので...重器、マスク、フィンに関しては参加者が所持していてレンタル不要の場合に『-』、持っておらずレンタルの準備が必要な場合に『●』を表示します。これらはフリーサイズ、もしくはサイズがあっても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という関数で表現することも出来ます。現場運営を考えるとレンタルフィンの在庫数と、当日の必要数に応じて足のサイズとフィンのサイズが1対1対応で無い場合も十分に考えられると思うので、その辺りまで自動化するためには、かなりの工夫が必要だと思います。BCやウエットの場合は、身長と体重、性別から総合的に判断する必要があるので、これもなかなか難しいでしょう。出来ないことは無いと思いますが、全部自動化してしまうと、融通の利かなさ、というデメリットも出てくるので、自分は最初にご紹介した形が一番使いやすく感じています。コメントをキャンセルメールアドレスが公開されることはありません。