![見出し画像](https://assets.st-note.com/production/uploads/images/115752597/rectangle_large_type_2_8c6bc618447fd09d7b1b9bf3588ca393.png?width=1200)
Excelの小技!可変・連動のプルダウン(データの入力規則)について
こんにちは(^^)/ アイシーティーリンク株式会社の三好です。
弊社のブログは社員が順番に投稿していくシステムなのですが、自分の当番じゃないときも投稿するのは自由なので、面白いネタがある時は、つい調子に乗って当番以外でも投稿していました。そしたらなんと!
当番になってネタがないという事態に陥りました( ̄Θ ̄;)
さて、どうしようかと悩んだ挙句、今更ですがエクセルで使用頻度の高い可変連動型のプルダウンリストの作り方を紹介しようと思います。
ネタがないときはエクセルの小技シリーズでいきます(笑)
Office365が普及しPowerPlatformの台頭で、エクセルが旧式アプリになってきてオワコンになる日も近いのでは!?と思うこの頃ですが・・・(-"-;)
イヤイヤまだまだエクセルの使用頻度は高いですよ!という事で!!!
25年くらい前から私が多用してきた小技を紹介いたします。
Excelでセルの値をリストから選択する方法があります。
そう!みんな大好きデータ入力規則の「リスト」です。
![](https://assets.st-note.com/img/1694251739765-HFISnshkkl.png)
普通に設定する場合はこんな感じですね。
B2セルを選択してアクティブにします。
上部リボンの「データ」タブ > 「データの入力規則」でデータ入力規則ウィンドウが開きますので、「設定」タブで以下のような設定をします。
![](https://assets.st-note.com/img/1694251643606-fFuox2PESq.png?width=1200)
図では、同じシートのセルを参照していますが、別のシートからセル参照させることも可能です。※古いエクセルでは別シート参照は出来ません。
セル参照ではなく、直接値をカンマで区切って入力することも可能です。
![](https://assets.st-note.com/img/1694252141630-XG5on2fpig.png)
![](https://assets.st-note.com/img/1694252212068-xL66D4RxdP.png)
いずれにしても、選択するための値が増減した場合は、参照先をその都度修正する必要が出てきてしまいます。
それはあまりスマートではないですよね。
そこで、可変型の参照先を設定する方法が役に立ちます。
"Sheet1"シートにプルダウンセルを設置
"Sheet2"シートにプルダウンメニュー用の管理シートとします。
"Sheet2"にプルダウンメニューで表示する値を入力します。
今回は"D1"セルには項目を設定し、”D2”~"D4"セルに値を入力し、適当なセルで"OFFSET"関数と"COUNTA"関数を組み合わせて、数式を作ります。
※今回は"F2"セルに数式を入力しています。
![](https://assets.st-note.com/img/1694253028849-LmV2NCPg97.png?width=1200)
=OFFSET(Sheet2!D2,0,0,COUNTA(Sheet2!D:D)-1,1)
このままでもいいのですが、列を固定するために"D"の前に"$マーク"を入力しておきます。
=OFFSET(Sheet2!$D2,0,0,COUNTA(Sheet2!$D:$D)-1,1)
![](https://assets.st-note.com/img/1694253242432-muXI3yr6J1.png?width=1200)
すると"F2"セルに数式が入っていますが、"F2~F4"セルに値が表示されれば数式が正しく設定できています。
この数式を「データの入力規則」>「設定」>「元の値」に直接入力すれば可変プルダウンの完成です!
※"Sheet2!F2"セルに作った計算式は今回の説明で分かりやすくするために作ったものなので、数式を設定したら削除して問題ありません。
数式を覚えてしまえば直接入力できます。
![](https://assets.st-note.com/img/1694253509279-6Sjetzv4pv.png?width=1200)
試しに"Sheet2"の"D5"以降のセルに値を追加してテストしてみましょう
![](https://assets.st-note.com/img/1694253938735-k3O03ERqBU.png)
![](https://assets.st-note.com/img/1694253953378-yWBFYzjNCE.png)
ちゃんとShhet1シートのプルダウンセルに反映しましたでしょうか
こちらはもちろん値が減る場合も対応可能です。
また、最近のエクセルでは「データの入力規則」>「設定」>「元の値」に別のシートを普通に指定できますが、実は古いエクセル(Office2000など)だと別シートの指定ができませんでした。そんな時は「名前の定義」に計算式を定義することで対応ができました。
こちらの方法も紹介しておきます。
「数式」タブ > 名前の定義(「Ctrl」+「F3」でも開きます)を開き、任意の名前(今回は"list"と付けます)を付けて、「参照範囲」に先ほどの数式を入力します。
![](https://assets.st-note.com/img/1694258502292-5hkAasjHvn.png)
あとは「データの入力規則」>「設定」>「元の値」に定義した名前「list」を入力するだけです。※イコール(=)を付けてから名前を入力する
![](https://assets.st-note.com/img/1694258580113-BFiU83LmSD.png)
どうでしょう。うまくできましたでしょうか(^-^ )
クラウドアプリ(SaaS)が台頭してきたことでエクセルの出番が少なくなってしまいそうですが、今までのビジネスシーンでは間違いなく主役級だったExcelです。現在使用中のファイルもまだまだあることでしょう。
そんなエクセルのファイルで、データ可変型のプルダウンメニューが役立つシーンも多いのではないでしょうか。
そんな方のお役に立てると嬉しいです。
それではまたお会いしましょう(^^)/
さよならっ!さよならっ!さよならっ!(故・淀川長治さん風)