[[20250503124143]] 『プルダウンで選択した項目によって選択できる内容』(悩みの人) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『プルダウンで選択した項目によって選択できる内容を変える』(悩みの人)

3段階のプルダウンリストを作成したいのですが、
1段目 
・動物
・植物
・魚類
2段目
・1
・2
・3
3段目
・動物の場合
 1 ライオン
 2 トラ
 3 ゾウ
植物の場合
 1 バラ
 2 カーネーション
 3 ひまわり
魚類の場合
 1 マグロ
 2 サメ
 3 アンコウ

A1セルのプルダウンで動物を選択し、B2セルで1を選択したら、C3にライオンと表示させるようにしたいのです。

ポイントは3段階にしたいところで、A1の内容によってB1で1を選んだ場合にC3をライオンやバラやマグロに変化させたいのです。
INDIRECT関数などで色々やってみましたがうまくいきません。
お助け宜しくお願い致します。

< 使用 Excel:Microsoft365、使用 OS:Windows11 >


 ちょっと確認ですけど、
 C3はプルダウンではなくて、A1とB1の組合せの結果の出力をしているのですよね?
 だとしたら、XLOOKUPで表引きするのが簡単ではないですか。

    |[A] |[B]|[C] |[D]|[E] |[F]|[G]           
 [1]|動物|  2|トラ|   |動物|  1|ライオン      
 [2]|    |   |    |   |動物|  2|トラ          
 [3]|    |   |    |   |動物|  3|ゾウ          
 [4]|    |   |    |   |植物|  1|バラ          
 [5]|    |   |    |   |植物|  2|カーネーション
 [6]|    |   |    |   |植物|  3|ひまわり      
 [7]|    |   |    |   |魚類|  1|マグロ        
 [8]|    |   |    |   |魚類|  2|サメ          
 [9]|    |   |    |   |魚類|  3|アンコウ      

 A1にデータの入力規則>リスト>元の値>動物,植物,魚類
 B1にデータの入力規則>リスト>元の値>1,2,3
 C1 =XLOOKUP(A1&B1,E1:E9&F1:F9,G1:G9,"")
(知らんけど) 2025/05/03(土) 13:55:44

下準備として
データの準備(シート上に名前付き範囲を作成)

 データ例をシートの別エリアに入力
 例えば、Sheet1のZ列〜

 Z列 AA列
 動物1 ライオン
 動物2 トラ
 動物3 ゾウ
 植物1 バラ
 植物2 カーネーション
 植物3 ひまわり
 魚類1 マグロ
 魚類2 サメ
 魚類3 アンコウ

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim category As String
    Dim number As String
    Dim key As String
    Dim result As String
    Dim dataRange As Range
    Dim cell As Range

    ' A1かB1が変更されたときだけ実行
    If Not Intersect(Target, Range("A1,B1")) Is Nothing Then
        category = Range("A1").Value
        number = Range("B1").Value
        key = category & number

        ' データが入力されている範囲を指定(Z列〜AA列)
        Set dataRange = Range("Z1:AA9")

        result = ""
        For Each cell In dataRange.Columns(1).Cells
            If cell.Value = key Then
                result = cell.Offset(0, 1).Value
                Exit For
            End If
        Next cell

        ' 結果をC3に表示
        Range("C3").Value = result
    End If
End Sub

(暇な人) 2025/05/03(土) 14:00:12


 下のように入力し、

	F      G        H
1	ライオン   バラ       マグロ
2	トラ     カーネーション  サメ
3	ゾウ     ひまわり     アンコウ

 F1:F3を動物
 G1:G3を植物
 H1:H3を魚類と、それぞれ名前定義

 >B2セルで1を選択したら
 >B1で1を選んだ場合
 B2なのかB1なのか、どっちですか?

 B1だとして
 =IF(OR(A1="",B1=""),"",INDEX(INDIRECT(A1),B1))
 
(おそ松さん) 2025/05/03(土) 16:19:13

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.