%20%E3%81%A8%E5%88%97%20B%20%E3%81%AE%E3%82%BB%E3%83%AB%E3%81%AE%E5%80%A4%20(%E6%95%B4%E6%95%B0)%20%E3%81%AB%E5%9F%BA%E3%81%A5%E3%81%84%E3%81%A6%E3%80%81%E3%82%BB%E3%83%AB%20C%20%E3%81%AE%E5%80%A4%E3%82%92%E6%B1%BA%E5%AE%9A%E3%81%97%E3%81%BE%E3%81%99%E3%80%82.png)
私は次のように問題を解決しようとしています:
列 A: 3 つの値のうちの 1 つ。{リンゴ、オレンジ、ナシ}
列 B: 整数。
列 C の値は、前の 2 つの列に基づいて計算する必要があります。
列 B の場合、数値の範囲にする必要があります。例: (1-19, 20-99)。つまり、リンゴの場合、数値が 1 から 19 までの場合は値は 12、数値が 20 から 99 までの場合は値は 4、それより大きい場合は値は 18 になります。
出力される範囲と値は果物ごとに異なります。
現時点では、ネストされた if ステートメントの長いチェーンを作成するのが最善ですが、これは最適ではないと思います。
=IF(I74=Reference!$A$2,(IF(AND(H74>=1,H74<=19),Reference!$B$4,IF(AND(H74>=20,H74<=149), Reference!$C$4,IF(H74>=150,Reference!$D$4,"NaN")))),(IF(AND(H74>=1,H74<=19),Reference!$B$8,IF(AND(H74>=19,H74<=99), Reference!$C$8, IF(H74>=100, Reference!$D$8, "NaN")))))
どのような助けでも本当にありがたいです。ありがとうございます。
答え1
各品目の制限数量を記載した参照表を用意し、数量を並べ替える必要がありますDESCENDING
。
どうぞ:
=INDEX($C$2:$C$4, MATCH(1, (F2 = $A$2:$A$4) * (G2 > $B$2:$B$4), 0))
配列数式を挿入するには、 の代わりにCTRL+ Shift+を使用します。EnterEnter
説明
$C$2:$C$4
価格基準の範囲です。
検索する基準が 2 つあるため、 を使用しますMATCH(1, (criteria1) * (criteria2) * (...), 0)
。この式は に類似していますMATCH(TRUE, criteria1 AND criteria2 AND ...)
。
つまり、基本的にはMATCH
テーブル上の品目名の検索と、数量値よりも低い数量制限です。
私の例では、apples
参照テーブルのみを掲載しています。当然、youroranges
とpears
yourself を追加する必要があります。