ひろふみのエクセル知恵袋
脱初心者で
豊かな『生活』の時間と 『仕事』のゆとり
★Excelが苦手な方は、以下の順番で学習していただけましたらと思います。
【0からの学習編 ~セル理解編~ 計算式理解編~ 現場の実務編~】
現場の実務編

【現場の実務編10】プルダウンリストの選択肢の作り方4選(直接入力&範囲指定&名前の定義&範囲指定自動化)※自動化して変化に強いリストにできます。

Sponsored Links

・プルダウンリストの作り方

・リストの選択肢を直接手入力して作成する方法

・リストの選択肢を範囲指定して選択肢を表示する方法

・リストの選択肢を名前の定義をして選択肢を表示する方法

・リストの選択肢を範囲指定し、なおかつ、リスト増減時の範囲を自動化

練習用サンプルデータ(ダウンロード)
※サンプルは、問題と解答の2種類あります。閲覧したい方はダウンロードして下さい。

あらかじめ用意された選択肢から入力候補を選べるようにするやり方について解説します。

今回掲載しているやり方以外にも、他にもありますが、この4種類を知っていれば、リスト作成時に困ることはないかと思います。

運用の中で、選択肢が増減するような可能性が高い場合は、目次の【4】がお勧めです。【4】はリストが増減しても自動で選択肢が増減する機能がついています。

(練習で実施するプルダウンリストの完成図)
※beforeの状態を、afterの状態まで仕上げる過程を説明します。

例題は、シート「マスタ」の営業進捗度の選択肢を、シート「練習用」の営業進捗度のセルにプルダウンで選択できるようにする問題です。


練習サンプルデータは、ダウンロードファイルのシート「練習用」となります。

‘【1】リストの選択肢を入力規則へ直接手入力して作成する方法

まず、D5にプルダウンリストが表示できるように設定をしていきます。

‘①セルD5を選択し、「データ」タブの「データの入力規則」をクリックします。

すると、データの入力規則のダイアログボックスが起動されます。

‘②「入力値の種類」で、リストを選択します。

‘③「元の値」に選択肢をカンマ区切りで入力します。その後、OKをクリック

(POINT)

「元の値」に、選択肢を直接手入力していると、「入力しづらさ」を感じる方がいると思います。そういった場合は、Excelのどこかのセルにリストを入力して、コピー&ペーストで貼付けると簡単に入力できます。

たとえば、一旦セルのA16に入力して、張り付けたあと、消すなど。

‘④すると、D5を選択すると、選択肢のリストが表示されます。「A」の前にも空欄の選択肢が表示されました。

‘⑤D6からD9については、D5をコピーし、張り付けてください。

解答を確認されたい際は、サンプルデータのシート「練習用(直接入力)」を参照ください。

‘【2】リストの選択肢を範囲指定して選択肢を表示する方法

まず、D5にプルダウンリストが表示できるように設定をしていきます。

‘①セルD5を選択し、「データ」タブの「データの入力規則」をクリックします。
すると、データの入力規則のダイアログボックスが起動されます。

‘②マウスで「元の値」を選択してください。

‘③シートの「マスタ」を選択します。選択肢にするB3からB8までをマウスでドラッグして選択してください。(空欄の選択肢は全角スペース入れと表示されます。)
その後、OKをクリックします。

マウスで指定した範囲が、「元の値」に反映されます。

範囲を手入力しても可ですが、手間を要するのでお勧めしません。

マウスで指定すると、範囲指定が自動で絶対参照になっています。

選択肢の範囲が絶対参照($)になっていないと、選択肢のセルをコピーした際に、選択肢がズレていきますので、注意

【計算式の理解編02】1つの数式を使いコピーして使い回す近道は、相対参照と絶対参照の理解です!! こんな悩みを抱えている方にお薦めの記事です。 数式コピーしてもイメージ通り、正しく反映できず困っている方 【相対参照】と【絶対...

‘④すると、D5を選択すると、選択肢のリストが表示されます。
※D6からD7については、D5をコピーして貼り付けてください。

(コピー&ペーストしても、絶対参照になっている為、選択肢がズレない)

‘【3】リストの選択肢を名前の定義をして選択肢を表示する方法

このやり方は、選択肢をあらかじめ入力した範囲に、名前を付けておき、入力規則で、名前を指定して選択肢を表示させる方法です。
※あとで増減した際に、名前を付けたセル範囲を変えればよいだけなので、変更が楽です。

‘①まず、シートの「マスタ」を選択してください。選択肢にしたいセル範囲B3からB8までをドラッグします。そして、「数式」タブ→「名前の定義」を開いてください。すると、「名前の管理」のダイアログボックスが起動されます。

‘②「名前の管理」の新規作成をクリックしてください。

すると、選択範囲に名前をつける画面になります。

‘③「名前」の欄に「営業進捗度」と入力しOKします。

 ※名前は任意で付けることができます。(※名前の定義を作成する画面)

‘④名前の管理の画面に、名前(名前の定義)が追加されました。
「閉じる」をクリックします。

‘⑤シートの練習用を選択してください。「データ」タブ→「データの入力規則」をクリックし、「データの入力規則」のダイアログボックスを起動します。

‘⑥「入力値の種類」を「リスト」を選択します。「元の値」に「=営業進捗度」と入力し、OKをクリック。

※元の値に、=の後に、名前の定義で設定した名前を入力。

※名前を「“」(ダブルクォーテーション)で囲まないこと。

間違い例→”営業進捗度“

’⑦ すると、D5に選択肢が表示されました。
※D6~D9についてはD5をコピーして貼付けてください。

解答は、サンプルデータの練習用(名前の定義)のシートを参照ください。

【4】リストの選択肢を範囲指定し、なおかつ、リスト増減時の範囲を自動化

これは、先ほど「名前の定義」をつけましたセル範囲を自動で増減できるように設定するやり方です。

‘①「マスタ」のシートを開いてください。「数式」タブ→「名前の管理」をクリックし、「名前の管理」のダイアログボックスを起動します。

‘②「参照範囲」に以下のOFFSET関数の数式を張り付けてください。その後、
✔をクリックし、「閉じる」

=OFFSET($B$3,0,0,COUNTA(B:B)-1,1)

【補足】 

作成した「名前の定義」を削除したい場合は、削除したい「名前の定義」を選択し、この画面の上にある「削除」をクリックすると削除できます。

‘③すると、選択肢を増やしても自動的に選択肢に追加されます。

(数式の解説)

(公式)

OFFSET(基準セル,縦にずらす数、横にずらす数,範囲の行数,範囲の列数)

OFFSET関数は、

基準にしたセルから、指定した行数と列数分だけ縦と横にずらした場所にあるセルを参照する関数です。

COUNTA関数は、

数値や文字列などデータが入力されているセルの個数を数える

最初の「=OFFSET($B$3」は、

基準位置を指定します。選択肢の1番目のセル$B$3を指定

次の「0,0」は、

基準位置を移動させる場合に使用するが、今回、基準位置は、ずらさないので、行と列は0を入力

次の「COUNTA(B:B)-1」は、

選択肢の個数をカウントで数えます。B列にあるデータを数えて、最後に選択肢でない「営業進捗度」のタイトル名の個数を(―1)引いています。

次の「1」は、

選択肢の「範囲の列数」の横幅は、B列の1列のみのため、1を指定

OFFSET関数の数式を作成する際のコツは、

選択肢のリストのあるシートで、適当などこかのセルで、OFFSET関数の数式を作っておいて、その後、数式をコピーして貼り付けると楽だと思います。私は、C9のセルで数式を作りました。

【計算式の理解編16】OFFSET関数の使い方(基準となるセルから指定した行・列だけ離れた位置を参照する関数)!! ・OFFSET関数とは何か ・OFFSET関数の使い方 練習用サンプルデータ(ダウンロード)※シートは練習用と成果物...

【4】まとめ

プルダウンでリストを作成するときは、選択肢が定期的に増減するのであれば、名前の定義や自動化を検討するとよいと思います。

一時的な短期間の運用期間であれば、自動化まではせず、範囲選択で作るやり方だけでもよいかと思います。

Sponsored Links