0

いくつかのドロップダウン メニューの選択に基づいて、Excel でいくつかのオプションの 1 つを出力したいと考えています。

たとえば、人の年齢、性別、およびサイズに基づいて、いくつかのオプションから特定のシャツのデザインを選択しました。これらの 3 つの変数は、3 つのドロップダウン メニューから選択できます。適切なオプションを見つけるためのマトリックスがあると仮定します。以下のように:

オプション マトリックス

これを達成するために使用できる Excel の関数はありますか? または、Visual Basic を使用する必要がありますか?

ありがとう!

4

1 に答える 1

1

ここでは VBA は必要ありません。必要なのはヘルパー ロジックと INDEX/MATCH 式だけです。

  1. オプションは一意である必要があり、1 行のオプション グループごとに 1 つの要素のみが含まれます。あなたの例では、オプション 5、6、および 9 を分割する必要があることを意味します。それぞれに複数の年齢層があるためです。黄色の線を参照してください。
    ここに画像の説明を入力

  2. オプションを何らかの方法でエンコードする必要があります。たとえば、0-4=4、5-9=9、10-14=14、男性 = M などです。その後、各オプションを 1 つの一意の 3 文字のテキストに変換できます。たとえば、オプション 1 は になります4ML。次の例では、次の式を使用してセル J3 の ID を作成しています。

    =INDEX($B$1:$D$1,MATCH("x",B3:D3))&INDEX($E$1:$F$1,MATCH("x",E3:F3))&INDEX($G$1:$ I$1,MATCH("x",G3:I3))
    ここに画像の説明を入力

  3. また、ドロップダウンからの選択をコードに変換する必要があります。黄色のセルの式は次のとおりです。
    =INDEX($B$1:$D$1,MATCH(M1,$B$2:$D$2,0))
    &INDEX($E$1:$F$1,MATCH(M2,$E$2:$F$2,0))
    &INDEX($G$1:$I$1,MATCH(M3,$G$2:$I$2,0))
    
    ここに画像の説明を入力
  4. 次の式を使用して、コードをオプションに変換するだけです。
=IFERROR(INDEX($A$3:$A$16,MATCH(M4,$J$3:$J$16,0)),"この選択にはオプションがありません!")

選択したオプションが利用できない場合は、小さなテキストが表示されることに注意してください。

理解を深めるために、ここでサンプル ファイルを見つけることができます。

于 2013-02-13T09:19:19.740 に答える