- ベストアンサー
EXCEL セル内文字を値に変換
セル内の文字を数値に置き換えることは可能でしょうか? 例えばセル内が”あああ”であれば隣のセルに”2”、”いいい”であれば隣のセルに”1”、 それ以外であれば隣のセルに”0”を表示させたいのです。 ご教授いただけますようよろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
A1にあああやいいいとすると,隣のB1に =2*(A1="あああ")+(A1="いいい") で良いです。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
「変換」と発想するのは、エクセルやコンピュター処理の経験不足からくる。 理論的に社会的にあああは1である理屈はない。質問者(か勤めている会社のの場合に勝手に決めているだけ。 変換の例では、2進数に変換(理論的)や大文字を小文字に変換(世界的)とか住所を郵便番号に変換(各国社会的)などならある。 だからエクセルでは、有名な常識であるべき関数VLOOKUP関数があるから、すぐ、「検索」するというイメージで思いつく人が多いはず。 質問者の勝手に作った対応表から(「あああ」で)表引きをして、対応する値(1)を持ってくるということになる。 それには あああ 1 いいい 2 という対象表をG1:H2などに作っておいて データが A列 B列 あああ いいい いいい ううう の場合B1に =IF(A1="","",VLOOKUP(A1,$G$1:$H$2,2,FALSE)) といれて、下方向に式を複写する。 結果 あああ 1 いいい 2 いいい 2 ううう #N/A この#N/Aを0にするために、見つからないというエラーを捕らえて、 =IF(A1="","",IF(ISERROR(VLOOKUP(A1,$G$1:$H$2,2,FALSE)),0,VLOOKUP(A1,$G$1:$H$2,2,FALSE))) 結果 あああ 1 いいい 2 いいい 2 ううう 0 えええ 0 他の(IF関数を使う)回答に比べ複雑だが エクセルを仕事で使ったりする以上、避けて通れないことです。 勉強してください。 対応表の行数が多い場合は、IF関数のネストの記述では、対応する括弧の数などで気を使って使う気がしない。 対応表が少ないときは、G,H列など使わず、式にこめてしまう方法もあるが略 対応表を別シートに持っていく方法もあるが略
- mshr1962
- ベストアンサー率39% (7417/18945)
方法はいくつかあります。 =IF(A1="あああ",2,IF(A1="いいい",2,0)) あるいは X1="あああ",Y1=2 X2="いいい",Y2=1 とした上で =IF(COUNTIF(X1:X2,A1),VLOOKUP(A1,X1:Y2,2,FALSE),0)
お礼
2重のIF文ですね!ありがとうございます!
お礼
ありがとうございます、参考になりました