アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルで文字列を分割する数式を探しております。

以下のデータを
右から4桁とそれ以外に分割したいのです。
20002  → 2 0002
30003  → 3 0003
40010  → 4 0010
511000 → 51 1000
1019550 →101 9550
1012279 →101 2279
2019220 →201 9220
3338850 →333 8550

たとえばLEFT関数やRIGHT関数ですと、分割というよりも
抽出になってしまい、私の求めているものとは異なってしまいます。

考えが煮詰まってしまい、これ以上進めない状態です。。。
何卒よろしくお願いいたします。

A 回答 (4件)

数値として2セルにするなら


=TRUNC(A1/10000)
=MOD(A1,10000)

LEFT関数,RIGHT関数を使う場合は
=LEFT(A1,LEN(A1)-4)*1
=RIGHT(A1,4)*1

単純にスペースで区切りたいだけなら
=LEFT(A1,LEN(A1)-4)&" "&RIGHT(A1,4)
または
=REPLACE(A1,LEN(A1)-4,1,MID(A1,LEN(A1)-4,1)&" ")
分割する文字列が数値だけなら、下記の方法でも可能
=TEXT(A1*1,"0 0000")
    • good
    • 0
この回答へのお礼

たくさんのアイデア、ありがとうございます!
感謝します。
勉強になりました。

お礼日時:2007/02/23 13:15

データをA列として、


B列に=SUBSTITUTE(A1,RIGHT(A1,4),"")
C列に=RIGHT(A1,4)
で抽出します。
後は、B,C列をコピーし、「形式を選択して貼り付け」で値のみを選択して貼り付けるで如何でしょうか。
期待値と相違していましたら読み捨て下さい。
    • good
    • 0
この回答へのお礼

なるほど!
右4桁をスペースで置き換えると言うことですか。
これは考えられなかったです。
ありがとうございます!!

お礼日時:2007/02/23 13:11

答えになってないかもしれません。



MID関数は検討しましたか?
私は、郵便局が「1060036」となっているものを「106-0036」にしたい場合以下のようにしています。
A1のセルに「1060036」が入っていた場合、
B1のセルに「=MID(A1,1,3)&"-"&MID(A1,4,4)」と入れています。

必ず右側が4桁なのなら、文字数をカウントする関数で全体の文字数を求めそこから4を引いた文字数目までをMID関数で抜き出すとか。
分からなかったら説明します。
    • good
    • 0
この回答へのお礼

MID関数も検討しましたが、どうもうまく使いこなせないようでして…。
助かりました。ありがとうございます。

>文字数をカウントする関数で全体の文字数を求めそこから4を引いた文字数目までをMID関数で抜き出す
とはLEN関数との合わせ技と言うことですかね。

お礼日時:2007/02/23 13:09

=LEFT(A1,LEN(A1)-4) & " " & RIGHT(A1,4)

    • good
    • 0
この回答へのお礼

なるほど、LEN関数ですね。考えてもいませんでした。
ありがとうございます。

お礼日時:2007/02/23 13:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!