• 締切済み

列A,列Bを参照して列Cにそれに対応する文字列を表示

列A,列B,列C 4,8,A 4,9,B 4,10,B 4,11,C 4,12,C 4,13,D 3,8,E 3,9,F 3,10,F 3,11,G 3,12,G 3,13,H 2,8,I 2,9,J 2,10,J 2,11,K 2,12,K 2,13,L 1,8,M 1,9,N 1,10,N 1,11,O 1,12,O 1,13,P 列Aに1~4,列Bに4~20の値を入れ、 列Cに、計算式で上記のような文字列を表示させたいのですが、 if関数のネストが7つまでらしく8つ以上が出来ません。 何か方法がありましたらお願いします。 =IF(AND(A2=4,B2<=08),"A" ,IF(AND(A2=4,B2<=10),"B" ,IF(AND(A2=4,B2<=12),"C" ,IF(AND(A2=4,B2>=13),"D" ,IF(AND(A2=3,B2<=08),"E" ,IF(AND(A2=3,B2<=10),"F" ,IF(AND(A2=3,B2<=12),"G" ,IF(AND(A2=3,B2>=13),"H"))))))))

みんなの回答

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.5

◆こんな方法もありますよ =CHAR(65+(4-A1)*4+INT((B1-7)/2)) または、 =SUBSTITUTE(ADDRESS(1,(4-A1)*4+INT((B1-7)/2)+1,4),1,)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

A列、B列は正整数を採るとする。 どこか邪魔にならないセル範囲に 例えばH1より右に ーH・・・・・・・・・・・・・T ー123・・8910111213・・ (1)・・・・・M N N O O P (2)・・・・・I J j K K L (3)・・・・・E F F G G H (4)・・・・・A B B C C D (後は質問ではわからないので、入れてください) といれて、表を作る。 C1に =INDEX($H$2:$T$5,A1,B1) C1の式を下方向に複写する。 一例で 1 8 M 1 9 N 1 10 N 1 11 O 1 12 O 1 13 P Ifは表引きの場合は使わない。 3-4段以上ネストする場合は、他の方法を考えること。

noname#204879
noname#204879
回答No.3

  A B  C D  E  F 1  4  8 A    8 A 2  4  9 B    9 B 3  4 10 B   11 C 4  4 11 C   13 D 5  4 12 C   108 E 6  4 13 D   109 F 7  3  8 E   111 G 8  3  9 F   113 H 9  3 10 F   208 I 10 3 11 G   209 J 11 3 12 G   211 K 12 3 13 H   213 L 13 2  8 I   308 M 14 2  9 J   309 N 15 2 10 J   311 O 16 2 11 K   313 P 17 2 12 K 18 2 13 L 19 1  8 M 20 1  9 N 21 1 10 N 22 1 11 O 23 1 12 O 24 1 13 P C1: =VLOOKUP((4-A1)*100+B1,E$1:F$16,2)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 C2:~ =IF(AND(A2>0,B2>0,COUNTA(A2:B2)=2),CHAR((4-A2)*4+64+ROUNDUP(MIN(8,MAX(2,(B2-6)))/2,0)),"") こんなところかな?

回答No.1

IF関数のみでは実現が難しいと思われますので、CHOOSE関数を組み合わせてみましょう。 =CHOOSE(インデックス,値1,[値2],・・・) 列A,列B,列C 4,8,A 4,9,B 4,10,B 4,11,C 4,12,C 4,13,D 3,8,E 3,9,F 3,10,F 3,11,G 3,12,G 3,13,H 2,8,I 2,9,J 2,10,J 2,11,K 2,12,K 2,13,L 1,8,M 1,9,N 1,10,N 1,11,O 1,12,O 1,13,P 問題の値は、列Aのみを見てみると4,3,2,1と並んでいますね。 そこで、CHOOSEを使うことによって、振り分けることができます。 =CHOOSE(A1,"値1","値2","値3",・・・) のような具合です。 A1に1が入力された場合、"値1"がかえってくることになります。 そこで数式の例です。 =CHOOSE(A1,CHOOSE(B1-7,"M","N","N","O","O","P"), CHOOSE(B1-7,"I","J","J","K","K","L"), CHOOSE(B1-7,"E","F","F","G","G","H"), CHOOSE(B1-7,"A","B","B","C","C","D")) なぜB1-7としているかというと、8,9,10,11,12という並びなので7を引いて1,2,3,4,5というならびにしたのです。

関連するQ&A