![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
Excelでの2つのリストの関連付け
Excelでリストを2つ作り、一つめの選択次第で二つめのリストの選択肢が変わるようにしたいです。
現在は他の方の質問(http://oshiete.goo.ne.jp/qa/4850624.html)を参考にし、名前定義とINDIRECTを使う方法は分かりました。
しかしこの方法ですと(既に名前が定義されている)「区分1」を(新たに決めた別の名称)「区分A」などに変更すると、その都度毎回名前の定義をやり直さないと機能しなくなります。
自分だけが使うのなら良いのですが、Excel初心者の人たちも使うので出来ればもっと簡単にしたいのです。
どうか2つのリストを関連付ける方法を教えてください。
なお、同じようなことが出来るなら、別に入力規制のリストに拘るつもりはありません。
他に(マクロ以外で)2つのセルの選択肢をうまい具合に関連付ける方法があるならそれでももちろん大丈夫です。
どうぞよろしくお願いします。
No.1ベストアンサー
- 回答日時:
例えばA1セルから下方に最初の選択のできるリストボックスを作りB1セルから下方ではA列で選択したデータに沿ったリストが表示されるようにするためには、名前などの定義を使わずにそれを行うとしたら次のような方法にします。
例えばシート2にはリストボックスで使用するデータがあるとして、その作成は次のようにします。
シート2のA1セルから例えばF1セルまでにはシート1のA列で使用するリスト表示に使う文字列を入力します。その2行目から下方には1行目で入力した文字列に対応してシート1のB列のリストで表示させる内容の文字列を並べます。ここでは仮に10行目までその文字列が入力されるとします。
これでシート2の作業は終わります。
次にシート1での作業ですがA列でのリストの作成ですがA1セルから下行を選択してから「データ」タブの「データの入力規則」で「リスト」さらに元の値には次の式を入力します。
=INDIRECT("Sheet2!A1:F1")
B列でも同様にリストで元の値には次の式を入力します。
=INDEX(INDIRECT("Sheet2!A1:F10"),2,MATCH(A1,INDIRECT("Sheet2!A1:F1"),0)):INDEX(INDIRECT("Sheet2!A1:F10"),10,MATCH(A1,INDIRECT("Sheet2!A1:F1"),0))
これで名前の定義などを使わないでリストを作ることができます。上記のような方法を参考にされてはいかがでしょう。
この回答への補足
回答ありがとうございます。
大体は理解できたのですが、B列のリストの元の値の数式が難しいのでもう少し質問させてください。
最初に選択するリストがA2からG2まで、
さらに二番目のリストがその上の行、A1からG1まで
の場合(つまりリストの行と列が入れ替わり、さらに最初に選択するリストの方が下にある場合)、
二番目のリストの元の値はどのように変化するのでしょうか。
お手数お掛けしますが、宜しければ教えてください。
ありがとうございます。KURUMITOさんの方法で出来ました。
補足に関しては、INDEXとMATCH関数で検索すれば色々出てました。
MATCH関数の「A1」の部分を変えるだけでしたね。ちゃんと調べず聞いてごめんなさい。
助かりました。ありがとうございました!
No.2
- 回答日時:
大項目の名前を変更しても自動的に対応する小項目の範囲を取得するならINDEX関数を使うのが簡単です。
添付画像のようなリストがA1:D6セルにあり、大項目をF2セル以下に入力し、小項目のリストをG2セル以下に設定するなら、G2セルの入力規則で「リスト」の元の値の欄に以下の数式を入力して下さい。
=INDEX($A$2:$D$6,,MATCH(F2,$A$1:$D$1,))
![「Excelでの2つのリストの関連付け」の回答画像2](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/d/1223543_5497e8286835b/M.jpg)
ありがとうございます。
急いでいるもので、ちょっとこの方法はまだ試していませんが、次の出勤時に試してみます。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルについて教えてください。 2 2023/06/14 11:11
- Excel(エクセル) コンボボックス及びリストボックスを5段階連動させる方法をご存知の方ご教授頂きたいです。 Excelで 3 2022/04/03 21:43
- Excel(エクセル) 別シートの表の値を参照したい 2 2022/03/30 15:11
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) Excelで質問です。 詳細(写真) ①黄色の部分を全てプルダウンを設定する。 ②リストはG列 ③リ 1 2023/06/16 21:54
- その他(趣味・アウトドア・車) アマチュア無線の「村」まで入った「市郡区番号リスト」を探しています 4 2022/08/27 07:07
- Mac OS Mac iPhoneの連絡帳の大量のリストを削除したい 1 2023/05/12 23:30
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- PowerPoint(パワーポイント) PowerPointの箇条書きの既定のリストを変更する方法について 1 2022/12/15 18:41
- Excel(エクセル) Excelで漢字人名が勝手に並び変わる(続) 4 2023/03/21 21:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで 自動的に◯や数字を...
-
【マクロ】2回実行したら、エ...
-
エクセルのツールバーから数値...
-
特定の文字列を含む、住所を抽...
-
Excel 2019 [オプション]の[リボンのユ...
-
祝日と土曜、日曜の合計をカウ...
-
EXCELの散布図で日付が1900年に...
-
マイクロソフトのPADを使ってい...
-
絶対参照
-
エクセルでCtrl+Tでテーブルの...
-
【マクロ】名前を保存する際に...
-
エクセルのクイックアクセスツ...
-
【マクロ】VLOOKUPにて参照元に...
-
Excel分数の表示について
-
【EXCEL】画像の黄色部分の抽出...
-
DATE関数で現在の年齢を出した...
-
Excelについて
-
マクロエクセルのブロック解除
-
Excelピボットテーブルの1行目
-
REGEXREPLACE関数について、
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報