(DATEDIF,HLOOKUP,MATCH)部屋タイプと宿泊日数から料金を自動で計算
エクセル関数を組み合わせて使用すれば、チェックイン日とチェックアウト日と部屋タイプを入力するだけで宿泊料金を自動で計算させることができます。
※関数を組み合わせて使用することを「関数をネストする」という言い方をする場合があります。
使用する関数はこれです。
オレンジ色の部分がエクセル関数を使用している箇所です。右側に赤字で実際の計算式を記述しています。
<関数の説明>
B16[宿泊日数]セルはDATEDIF関数を使用して、チェックイン日とチェックアウト日の差分を計算しています。
A18[一泊当りの料金]セルではHLOOKUP関数とMATCH関数を使用して、宿泊料金表から一日当りの料金を表示させています。
関数を組み合わせて(ネストして)使用しているためちょっと複雑に見えますが、中身は分解して説明すると、
まず、「MATCH(B14,部屋タイプ,0)」部分は「部屋タイプ」リスト内で指定された部屋タイプが何番目の位置にあるか検索しています。
「+2」しているのは、「部屋タイプ」と「料金表」の始まり行位置が2行ずれているからです。
そしてHLOOKUP関数では、宿泊日数34泊が料金表のどの列を参照すればいいか検索し、上記MATCH関数で求めた部屋タイプの行と一致する値を表示させています。