- ベストアンサー
ホテルの客室清掃の内容を関数で表現したい
- ホテルの客室清掃に関するエクセルの関数を組む方法についての質問です。部屋の種類に応じてポイントを計算するための関数を作成したいと考えています。
- 清掃をする部屋には、ベッドが1つある部屋とベッドが2つある部屋の2タイプがあります。山田さんの一日の仕事内容をポイントで表現するために、部屋の状況に応じてポイントを計算する関数が必要です。
- ベッドが1つの部屋の場合は1ポイント、ベッドが2つの部屋の場合は3ポイントです。ベッドメイクをする場合は、ベッドの数に応じてポイントが増えます。エクセルの関数を使って、山田さんの一日のポイントを計算する方法を教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- yasuto07
- ベストアンサー率12% (1344/10625)
割と簡単なのは、 一列目、作業日、二列目、作業者名、三列目、部屋番号、四列目、清掃、5列目、清掃ベッド、六列目、清掃ツインベッド、7列目合計 これで、作業日、名前、あとは、やったらんに1だけを入れる、、、最後に、縦集計ができたら、、、回数がわかるので、もう一列足して、 元表に基づいて、ポイントを計算すればいい。 職員が増えても、、、並べ替えできるし、日付でもそーとできるのでは、、、。
- MackyNo1
- ベストアンサー率53% (1521/2850)
No2の回答の補足です。 回答ではベッドが2つの部屋は部屋番号の左1文字が「2」という条件の数式を利用しましたが、実際にはそのような基準ではなく、部屋番号に特に規則はないなら各行のポイント計算の式を以下のように修正してください。 =IF(D2="","",D2+E2+(ISNUMBER(MATCH(B2,{"201","202","203","204"},)))*(E2<>"")) #実際の運用方法や集計目的がわからないので、一般的な集計方法の例を勝手に作成してみましたが、このようなご質問では、集計の目的(たとえば1か月分の合計をしたいなど)、実際に入力されているデータ形式やリストのレイアウトによって最も合理的な数式が異なりますので、これらの部分を補足説明された方がご希望に近い回答が得られると思います。
お礼
とても参考になりました!ありがとうございました!!
- MackyNo1
- ベストアンサー率53% (1521/2850)
今回のご質問では説明されていませんが、実際の運用では「山田」さんだけでなく、他の担当者がいることや、毎日のデータを集計してポイント合計を出したいのではないかと思います。 その場合は、以下のような運用が簡単です。 A列に日付、B列に部屋番号、C列に担当者、D列に清掃の有無(1の場合は清掃)、E列にベッドメイクの有無を入力し、F列に以下の式を入力してその部屋の処理ポイントを集計します。 =IF(D2="","",D2+E2+(LEFT(B2,1)="2")*(E2<>"")) I1セルに検索する担当者、H4以下に検索する日付を入力し、下方向にオートフィルしておきます。 そして、I4セルに以下の式を入力して下方向にオートフィルすれば、H1各日付のポイント合計を計算することができます。 =SUMIFS($F$2:$F$20,$C$2:$C$20,$I$1,$A$2:$A$20,H4) 担当者が「山田」しかいない、あるいは日付ごとの集計はする必要がない場合は、もちろんF列を単純に合計するだけで計算できます。
お礼
とても参考になりました!ありがとうございました!!