『INDIRECT関数でリスト作成』(アマミヤ)
INDIRECT関数を用いてプルダウンリストを作成しています。
既存のテーブルにない文言が入力された場合にのみ、
特定のテーブルをプルダウンリストとして表示させたいです。
【具体例】
・sheet1のA1にプルダウンリスト作成、元データに[=郵便物の種類]
・同シートのB1にもプルダウンリスト作成、元データに[=INDIRECT(A1)]
・sheet2のA1に「定型郵便」、B1に「定形外郵便」、C1に「ゆうメール」と入力し、
A1〜C1を「郵便物の種類」として名前をつける。
・同シートのA2以下に「25g以下」、「50g以下」
・同シートのB2以下に「50g以下」、「100g以下」、「150g以下」、「250g以下」…
・同シートのC2以下に「150g以下」、「250g以下」…
・要は郵便物の種類ごとに重さを選べるようにしたいので、
それぞれ選択範囲から名前を作成(上端行)しています。
・上記の方法なら、sheet1のA1のプルダウンリストで「定型郵便」を選ぶと、
B1のプルダウンリストでは「25g以下」と「50g以下」のみが選べます。
・ここで、sheet1のA1に「課長への郵便物」や「例のあの書類」などと自由に手打ちした場合、
B1のプルダウンは何も出てきません。
・質問としては、sheet1のA1に「例のあの書類」だのなんだの自由に入力した場合に、
B1のプルダウンリストに「25g以下」、「50g以下」、「100g以下」……のような
種類にとらわれない重さのリストを表示したいです。
・あらかじめ「25g以下」、「50g以下」、「100g以下」、「150g以下」、「250g以下」のリストを
「重さ一覧」という名前で作成してあるとします。
INDIRECTの前にIFERROR入れればできるかな?と思ったのですがダメでした…
ご教授いただけますと幸いです。
< 使用 Excel:Excel2019、使用 OS:Windows10 >
=IF(COUNTIF(Sheet2!$A$1:$C$1,A1),INDIRECT(A1),INDIRECT("重さ一覧"))
これでできますか? (笑) 2023/09/21(木) 21:17:35
↑ なんか動作が不安定です。 できたりできなかったり・・・ (笑) 2023/09/21(木) 21:32:09
一応できてるような気がする・・・
=IF(COUNTIF(郵便物の種類,A1),INDIRECT(A1),INDIRECT("重さ一覧"))
でも (笑) 2023/09/21(木) 22:04:35
>INDIRECTの前にIFERROR入れればできるかな?と思ったのですがダメでした…
IFERRORを使うとすると、こんな感じ? =INDIRECT(IFERROR(HLOOKUP(A1,郵便物の種類,1,FALSE),"重さ一覧"))
こんなのでもよさそう。 =IF(OR(A1=郵便物の種類),INDIRECT(A1),重さ一覧)
(半平太) 2023/09/22(金) 10:09:38
大変勉強になりました!
笑さんと半平太さん、ありがとうございました!!
(アマミヤ) 2023/09/22(金) 20:19:43
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.