重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

エクセルで画像左のような勤務シフト表を作成しています。
その際、画像中央にある別シートに記載された記号(B2セル以降下)をドロップダウンのリストとして入力しています。また、社員は画像右にある別のシートにて管理されています

質問ですが
入力する勤務記号を会社一括で管理しているため、通常のドロップダウンでは数十という数のリストが表示されてしまいます。1課~3課までの社員について、それぞれの所属にあわせて使う記号だけ表示をさせたいと考えています(1課なら、E列で1が入っているものだけ、といったように)

検索すると、絞り込み用のドロップダウンで部署をあらかじめ選択→それに連動させて絞り込み、という方法は見つかったのですが、画像のようなシフト表で、例えば職種に本部長が記載されていたら(実際はVLOOKUPで自動表示されています)、D以降の18行については、1課に割り当てられた記号が絞り込まれてドロップダウンで表示されるようにすることは可能でしょうか?

わかりづらい点ありましたらご指摘ください。よろしくお願いします。
(画像が見づらい場合も同様です)

「エクセル ドロップダウンリストの絞り込み」の質問画像

A 回答 (1件)

こんにちは



回答が無いようですので・・・
画像はほぼ読めませんし、説明文を読んでもイマイチはっきりしない部分があるので、勝手に以下のように解釈しました。

・1人1行の入力欄があって、プルダウンで入力したい
・各人の所属に応じて、別表から絞り込んだ項目だけをプルダウンに表示したい
(所属と項目(=記号)の対応表は別表としてあるものとします)

最近のバージョンであれば、直接入力規則を設定することで可能と思いますが、当方にその環境がないため確認できません。
ですので、以下は、古いバージョンでのローテクな方法になります。
ローテクなため、一旦、表示用のリストを作成する方法にしてあります。
(多分、最近のバージョンであれば、この表は省けると思いますが・・)


要領を示すための例として、簡略化して項目を減らし、1シートにまとめてありますが、別シートなどの場合でも要領は同じです。
添付図では、左側の表が入力用の表、右上が所属と記号の対応表(表中の1の項目だけ抽出する)、右下は表示用の中間リストと想定しています。

1)図では、G12セルに
=IFERROR(INDEX($F:$F,AGGREGATE(15,6,ROW(G$3:G$9)/G$3:G$9,ROW(A1))),"")
の式を入力し、G12:K18までフィルコピーしてあります。
これにより、対応表で1が入力されている項目だけが抽出されます。

2)入力用のC3セルに入力規則を設定します。
「入力値の種類」をリストとし、「元の値」の欄に以下の式を入力します。
=OFFSET($F$12,,MATCH($B3,$G$2:$K$2,0),7-COUNTBLANK(OFFSET($F$12,,MATCH($B3,$G$2:$K$2,0),7)))
その上で、入力対象範囲(添付図では、C3:D10)にフィルコピーします。

以上で、入力欄のC、D列のプルダウンでは、各行の所属に応じた項目内容が表示されるようになります。


※ 上記はあくまでも要領なので、ご自身の環境に合わせて調整してください。
※ 実際の動作確認は、まず添付図と同じものを作成してみて、表中の値を変えるなどしてみれば、どのように動作をしているかわかると思います。

※ 勝手な解釈での回答なので、意味が違っている場合はスルーしてください。
「エクセル ドロップダウンリストの絞り込み」の回答画像1
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
画像が見えにくくて大変申し訳ありません。
解釈の通りの考えで間違いありません。

当初、FILTERやVLOOKUPなどで解決できるのかと思っていたのですが、思うようにできず、質問させていただきました。
添付の図を見ながらこちらの環境にあわせてます。

わかりやすく丁寧な回答、感謝申し上げます。

お礼日時:2025/04/22 14:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A