- ベストアンサー
IF関数でしたい事と、似たような計算
エクセル2002です。 表の中に A B C D 1 1~10 A 2 11~20 B 3 21~30 C 4 31~40 D : と入力されています。 表示させたい内容は ★「C1セルには数字を入れます。その数字が8ならば、8は1~10の中の数字なので、D1のセルにAと表示される。15ならばBと入力したいです。 使う関数は、IF関数‥‥と迷ったのですが、1~20、21~30‥‥199~200まであるので、IF関数が使えません。 関数では、このような可能でしょうか? 可能であれば教えてください。 不可能であり、他の方法があるなら、教えてください。 お願いします。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
一部訂正 D列の関数は =VLOOKUP(C1,$A$1:$B$20,2)
その他の回答 (6)
- DoragonFang
- ベストアンサー率41% (91/221)
A列の区切りはすべて10刻みなんでしょうか? それなら、こういう方法もあります。 D1セルに、 =INDEX($B$1:$B$20,INT((C1-1)/10)+1,1)
お礼
10刻みなら、この関数でもよさそうです。 いろいろ場合によって使い分けてみます。 ありがとうございました。
- mu2011
- ベストアンサー率38% (1910/4994)
安直ですが以下の方法は如何でしょうか。 (例)差分が10単位の場合、入力された値を相対数にして該当するセルを参照します。 =IF(C1<>"",OFFSET($B$1,(C10-1)/10,0),"") 尚、「0」入力時は考慮していません。
お礼
そうですね。10単位の時は、これでもよさそうです。 参考になります。 ありがとうございました
- ryk1234
- ベストアンサー率40% (46/113)
多少元表をいじる形になってしまいますが… A B C D E 1 1 10 A 8 2 11 20 B 3 21 30 C と範囲をA,Bに入力 E1に以下の数式 =VLOOKUP(D1,$A$1:$C$3,3)
お礼
ありがとうございます。 参考にします。
- tresbien
- ベストアンサー率51% (51/99)
A列の数値を 1 11 21 31 : 191 のように入力しなおします。 D列の関数は =VLOOKUP(C9,$A$1:$B$20,2) 詳しくはヘルプを参照してください。
補足
回答ありがとうございます。 =VLOOKUP(C9,$A$1:$B$20,2) この「C9」は何処から来たのでしょうか?教えてください。
- 7_7_7
- ベストアンサー率24% (115/469)
マクロ(VBA)を使えば簡単です。
お礼
マクロですか。 ありがとうございます
- honey_001
- ベストアンサー率35% (19/53)
If関数でも可能じゃないですか? If(C1>=1,If(C1<=10,C1,B1),B1)こんな感じかな? 上記は適当に書いたので記号やらがぬけてるかもしれませんw If関数は最大7回(セル1つに対し)まで使えますよ。 あとはvlookupを使用し、上記以外のセルに1からずっと入力して、参照判定する方法もありますね。 このほうはめんどくさいですね。
お礼
私も、関数と思ったのですが <=10 <=20 <=30 <=40 <=50 <=60 <=70で既に7個。 残りはまだまだ。<=200まで作れたら良いのですが‥‥できるのでしょうか?
お礼
無事出来ました。 1を 入れるのを忘れていました。 大変助かりました。 ありがとうございました
補足
入力しましたが、#N/A になってしまいます。 数字も直したのですが‥‥他にも何かしなきゃいけない事はあるのでしょうか?