[[20260311144817]] 『予約時間で早い順に席を取得する』(sysnsy) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『予約時間で早い順に席を取得する』(sysnsy)

セルA2以降に一意のユーザ名が入力されています。
セルB2以降に予約日時が入力され、予め早いものから昇順にソートされています。
同シートの欄外、セルK2〜K6に席のランクがA〜Eで入力。
セルL2〜L6に割り当て可能な席数が入力されています。

以下の処理を実現する関数を知りたいです。
予約時間が早いものから席Aを割り当て
席Aの割り当て数がL2の数字を超えたら、席Bを割り当てL3の数字を超えたら席Cを割り当て…というように、
セルC2以降に数式で座席名を割り当て、A〜Eすべての席の合計を上回ったら「N/A」や「-(ハイフン)」を表示したいです。

< 使用 Excel:Microsoft365、使用 OS:Windows11 >


 まずK7セルに
 -
 と入力、そしてM2セルに
 1
 と入力しM3セルに
 =M2+L2
 と入力してM7セルまでフィルコピーする。

 そしてC2セルに

 =XLOOKUP(SEQUENCE(COUNTA(A2:A100),,1,1),M2:M7,K2:K7,,-1,1)

 と入力ではどうだろうか?

 なお、元データが最大100行目までの場合。
 そこはCOUNTA関数内のA100で調整してくれ。
(ねむねむ) 2026/03/11(水) 15:36:56

 C2セルに
 =TEXTSPLIT(CONCAT(REPT(K2:K6&";",L2:L6)),,";")
 ではダメでしょうか
(´・ω・`) 2026/03/11(水) 15:47:43

>ねむねむ様、(´・ω・`)様
できました!ありがとうございます。
スピル及び知らなかった関数について勉強します。
(初心者1) 2026/03/11(水) 15:57:06

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.