• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:一致する文字列がある行だけを、別BOOKのプルダウンリストに表示させる方法)

一致する文字列がある行だけを、別BOOKのプルダウンリストに表示させる方法

このQ&Aのポイント
  • 質問者は、別のBOOKのプルダウンリストに、一致する文字列がある行だけを表示させたいと考えています。
  • 具体的には、対象のBOOk1のセルD2~F2の中のいずれかのセルに表示されているメンバの名前を参照し、その同じ行のA列、B列、C列のセルを別のBOOk2やBOOK3のプルダウンリストに表示させたいということです。
  • 質問者は、CASE MASTERを参照し、担当者ごとに作成している別のBOOKのセルに設定してあるドロップダウンリストの中に、自分の名前が入っている案件だけをリストアップすることができる方法を知りたいと考えています。

質問者が選んだベストアンサー

  • ベストアンサー
  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.2

Book1に元データが入っているとしますBook名=[元データ] Book2のSheet1 A1セルにブック名(担当者名)を入力 A2セルに =IF(OR($A$1=[元データ.xls]Sheet1!D2,$A$1=[元データ.xls]Sheet1!E2,$A$1=[元データ.xls]Sheet1!F2),ROW(),"") B2セルに =IF(COUNT(A:A)<ROW()-1,"",OFFSET([元データ.xls]Sheet1!$A$1,SMALL(A:A,ROW()-1)-1,0)) C2セルに =IF(B2="","",VLOOKUP($B2,[元データ.xls]Sheet1!$A$1:$F$3000,2,0)) D2セルに =IF(B2="","",VLOOKUP($B2,[元データ.xls]Sheet1!$A$1:$F$3000,3,0)) A2:D2セルを下方向に元データの最終行までコピー A列は作業セルになるので入力後非表示にしてください。 元データのブックを開いておく必要がありますが関数式のみで各個人のBookは作成可能です。 同一Book内に個人のSheetを作るのであれば、[元データ.xls]の表記は要りません、元データを開かずに利用するにはBookの保存先のフルパスの入力が必要になります。

KTN1123
質問者

お礼

早々のご回答をありがとうございました。 このような複雑な関数式を教えていただき、感謝の気持ちでいっぱいでございます。 早速、試してみたいと思います。 また質問等をさせていただくこともあるかと思いますが、宜しくお願い致します。

その他の回答 (1)

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.1

条件に一致する行の抽出であれば、関数を駆使して実現は可能ですが、ドロップダウン表示となるとマクロを利用しないと難しいと思います。 入力規制のリストでは作業セルを用いて必要条件に一致する表をすべて作成しないと実現不可と思います、その表自体が目的のシート形状と同じになると思うので、ドロップダウンリストでの表示自体が無意味なものとなると思います。 で、回答案の一例として Sheet1のどこかに担当者毎の一覧表を別途作成、表の項目ごとに範囲に名前をつけドロップダウンリストで表示させる。

KTN1123
質問者

補足

丁寧なお返事ありがとうございます。大感謝です。 初めて質問させていただいたのですが、すぐに回答をいただき驚いております。 ご回答を受けて、下記2点の質問がございます。  関数を駆使すれば担当者ごとの一覧を抽出して別途一覧表の作成ができるとの事ですが、このBOOK1のマスターは毎週更新されるのですが、その都度担当者ごとの一覧を作成するのは時間的に厳しいと思うのですが、一覧を簡単に作成できるような関数式を教えていただくことは可能でしょうか? また、関数だけでは難しいがマクロを利用すれば実現できるといことでしょうか?もしマクロを使ってできるのであれば、ぜひ挑戦してみたいのですが、分かる方がいらっしゃいましたら ご教授いただけますでしょうか? お手数お掛け致しますが、何卒宜しくお願い致します。

関連するQ&A