- ベストアンサー
エクセルのセルの内容を分割して数値に変換する方法
お世話になっております。当方エクセル2007を使用しております。掲題の件でご質問させてください。 あるアンケート結果をエクセルでまとめたデータを保持しています。回答の中で、複数回答を許している設問の場合、例えば1つのセルに以下のような内容が入っているケースがあります。 1.神奈川:2.千葉:5.静岡:7.三重 各回答と回答の間は半角コロンで区切られています。 例えば選択肢が7つあるケースでは、このデータを分析するために、以下のように7つのセルに数値にばらして表現させたいと考えています。 列1 列2 列3 列4 列5 列6 列7 1 1 0 0 1 0 1 1.神奈川を選択しているので列1には「1」を。 同様に列2も「1」。列3は選択していないので「0」という具合です。 回答データは1200件ほどあり、手作業でも出来ないことはないとは思いますが、できればもっと効率的なやり方がないかと思いご質問させていただきました。 手順が2回に分かれても構いませんので、もし効率的なやり方をご存知の方がいらっしゃいましたらご教授いただけませんでしょうか。 どうぞよろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
A列にデータがあるとして B1セル~H1セルに分割したデータを作るとします。 B1セルに =IF(ISERROR(FIND("1.",$A1)),0,1) C1セルに =IF(ISERROR(FIND("2.",$A1)),0,1) 以下同様にして H1セルに =IF(ISERROR(FIND("8.",$A1)),0,1) B1~H1を必要なだけした方向にコピー 以上
その他の回答 (3)
- tom04
- ベストアンサー率49% (2537/5117)
No.2です! たびたびごめんなさい。 前回のように難しく考えなくても良かったみたいです。 No.3のASIMOVさまの表を利用させていただくと B2セルに =IF(ISNUMBER(FIND(B$1,$A2)),1,0) でOKです。 結局No.3さんと同じ方法になってしまいました。 どうも何度もごめんなさいね。m(__)m
お礼
2回も回答いただきどうもありがとうございます。 ご教授いただきました方法でもデータ作成が可能なことを確認いたしました。 早い者勝ちということで良回答がつけられず申し訳ありません。 また何かありましたらどうぞよろしくお願いいたします。
- ASIMOV
- ベストアンサー率41% (982/2351)
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 色々方法はあるかと思いますが・・・ 一例です。 当方使用のExcel2003の場合です。 ↓の画像で説明させていただくと A列のデータを メニュー → データ → 区切り位置 → カンマやスペースに・・・ を選択 → その他にチェックを入れ、コロンを入力しOK これで区切られますので、そのデータを元に 作業用の列I2に =LEFT(B2,1) として7列分ほどオートフィルでコピーします。 このデータを元に 結果のP2セルに =IF(COUNTIF($I2:$O2,COLUMN(B2)),1,0) という数式を入れ、オートフィルで列方向にコピーすると 画像(少し小さいかもしれません)のような感じになります。 エラー処理はしていません。 以上、二度手間の方法ですが参考になれば幸いです。 他に良い方法があれば読み流してくださいね。m(__)m
お礼
早々にご回答どうもありがとうございます。 ご教授いただきました方法で無事にデータを作成することができました。