- ベストアンサー
エクセルで指定セルからの特定位置の指定
あるセルの中に指定範囲のセルの値が入力された場合、そのセルの隣のセルの値を取得する場合はどうすればよいでしょうか? 質問文だとわかりにくいので例を・・・ A | B | C | D | 1 | 10 | zz | | | 2 | 15 | yy | | | 3 | 18 | xx | | | 4 | | | | | セルC4にはB1~B3のいずれかの値を入れる セルD4にはC4の入力元の左側の値を出力(C4=B3なら"18") 説明下手で申し訳ないですが、おわかりになられる方がいらっしゃいましたら、 よろしくお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
>セルD4にはC4の入力元の左側の値を出力(C4=B3なら"18") 質問の解釈の仕方ですが C4に xx と入力したら D4に 18 でしょうか? D4は =INDEX(A:A,MATCH(C4,B:B,FALSE)) になると思います。
その他の回答 (5)
- web2525
- ベストアンサー率42% (1219/2850)
A列が数字であることが条件ですが 配列関数で {=SUM((C1=$B$1:$B$3)*$A$1:$A$3)} これで可能
お礼
回答ありがとうございます&説明不足ですみません。 文字列の場合もあります。
- mt2008
- ベストアンサー率52% (885/1701)
No.3です 質問を読み違えていました。 C4には「B1」「B2」「B3」の文字列が入るのですね。 でしたら、アルファベット部分が1文字なら↓でいいと思います。 =INDEX(A1:A3,RIGHT(C4,LEN(C4)-1))
- mt2008
- ベストアンサー率52% (885/1701)
=INDEX(A1:A3,MATCH(C4,B1:B3)) こんな感じですかね。 A列とB列が逆ならVLOOKUPでもっと簡単に出せるのですが……。
お礼
INDEXとLOOKUPを利用して出来るようになりました。 ありがとうございました。
- Tetralemma
- ベストアンサー率54% (57/104)
セルD4にマクロを記述 =IF(C4="B1",A1,IF(C4="B2",A2,IF(C4="B3",A3,""))) 他のセルはコピーすればOK
お礼
早速の回答ありがとうございます。 入力数が例よりも沢山あるのでIF文が長くなりそうで。。 説明不足ですみません
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 D1に=IF(COUNTIF(B:B,C1),INDEX(A:A,MATCH(C1,B:B,0),"")を設定、下方向にコピー
お礼
早々の回答ありがとうございます。
お礼
意図したように出来ました。 質問が不明確な中の回答ありがとうございました。