- 締切済み
【エクセル】 複数情報をふくむセルを内容で区切る
こんにちは。 セルA1に ABC Bar 2013-01-19 00:33:17 47777 New World 1154789650 セルA2に Cafe du rock 2013-03-10 00:30:30 65897 New Era City 6500321540 という情報があったとして、 -で結ばれた日付のみをセルB1, B2に抽出することは可能ですか。 ↑ 上記の質問を投稿させていただき、おかげさまで回答を得られました。 しかし、欲をいえば、内容ごとに区切れたら最高なのです。こんな機能ってあるのでしょうか。 区切りたい内容は以下の通りです。 セルB1に 一番左の英字(ABC Bar) セルC1に 日付(2013-01-19) セルD1に 時間(00:33:17) セルE1に 5桁の数字(47777) セルF1に 右から二番目の英字(New World) セルG1に 一番右の10桁の数字(1154789650) 行によってはそれぞれの情報の間に1スペースだったり、2スペースだったり… また、英字の部分は文字数がまちまちです。 せめて、右から2番目の英字だけでも抽出できたらと思います。 ちなみにエクセル初心者でマクロなどよく分からないので、 できるだけシンプルな方法をご教示ください。 どうぞよろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- keithin
- ベストアンサー率66% (5278/7941)
>「123456789 ABC Bar」と表示されているものを英字のみにする B1に =LEFT(A1,9) C1に =MID(A1,11,FIND(D1,A1)-12) #だらだらと後出しのいつまでも終わらないご相談が多くて。ホントに迷惑しています。
H1: =TRIM(A1) I1: =FIND("-",H1) B1: =LEFT(H1,I1-6) C1: =MID(H1,I1-4,10) D1: =MID(H1,I1+7,8) E1: =MID(H1,I1+16,5) F1: =TRIM(SUBSTITUTE(MID(H1,I1+22,99),G1,"")) G1: =RIGHT(H1,10)
お礼
mike_gさん ご回答どうもありがとうございました。
- KURUMITO
- ベストアンサー率42% (1835/4283)
スペースがダブルの場合もあったりとのことですから次のような式にしてはどうでしょう。 B1セルには =LEFT(A1,FIND("-",A1)-5) C1セルには =MID(A1,FIND("-",A1)-4,10) D1セルには =MID(A1,FIND(":",A1)-2,8) E1セルには =MID(TRIM(A1),FIND(":",TRIM(A1))+7,5) F1セルには =MID(TRIM(A1),FIND(":",TRIM(A1))+13,LEN(TRIM(A1))-10-FIND(":",TRIM(A1))-13) G1セルには =RIGHT(TRIM(A1),10)
お礼
KURUMITOさん ご回答どうもありがとうございました。
- keithin
- ベストアンサー率66% (5278/7941)
ただの応用です。 B1: =LEFT(A1,FIND(C1,A1)-1) C1: =MID(A1,FIND("-",A1)-4,10) D1: =MID(A1,FIND(C1,A1)+11,8) E1: =MID(A1,FIND(C1,A1)+20,5) F1: =SUBSTITUTE(MID(A1,FIND(C1,A1)+26,99)," "&G1,"") G1: =RIGHT(A1,10) 前回皆さんから回答に寄せられていた通り、C,D,E,G列については必要に応じて*1してそれぞれの表示形式を取り付けておきます。
お礼
keithinさん ご丁寧にお答えいただいてありがとうございました。 ご迷惑をおかけ致しました。これで全て解決しました。
補足
応用がきかずまたまた困っています。 ABC Barの左横に、123456789という新たな情報が加わったときにはどう区分けしたらいいのでしょうか(B1に123456789、C1にABC Barと表示させたい)。 B列に一列挿入し、=LEFT(A1,9)という式をいれてこの9桁の数字をだすところまでは出来たのですが、「123456789 ABC Bar」と表示されているものを英字のみにするには、どうしたらいいのでしょうか。
お礼
keithinさん ご丁寧にお答えいただいてありがとうございました。 ご迷惑をおかけ致しました。これで全て解決しました。