プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

表題通り セルを3つに分割する数式についてアドバイスを頂けると助かります。
作業の円滑化のために、区切り位置は使用しないつもりです。

1つのセルに
「10 20 30 」(数字スペース数字スペース数字)のような
3つの数字が入っており、それを分割したいのですが、

次のような桁数がバラバラなものも、正しく分割できるA2,A3,A4の数式はありますでしょうか?

例: 

     1        2      3     4
A  5 10 200      5 10 200
B  100 0 100  100 0 100
C 30 30 30 30 30 30

A2の場合は、
=LEFT(A1,FIND(" ",A1)-1)
でうまくいきましたが、 真ん中、右側がうまくいきません。

宜しくお願いいたします。

A 回答 (4件)

こんにちは!



やはり「区切り位置」やVBAの方が簡単なのですが、関数をご希望というコトですので、
一例です。

余計なお世話かもしれませんが、文字列でも対応できるようにしてみました。
データはA1セルからあるとします。
長くなりますが、B1セルに
=IFERROR(MID(SUBSTITUTE(" "&$A1," ","#",COLUMN(A1)),FIND("#",SUBSTITUTE(" "&$A1&" "," ","#",COLUMN(A1)))+1,FIND("#",SUBSTITUTE(" "&$A1&" "," ","#",COLUMN(B1)))-FIND("#",SUBSTITUTE(" "&$A1," ","#",COLUMN(A1)))),"")
という数式を入れ列・行方向にフィルハンドルでコピーしてみてください。

※ 半角スペースがいくつあっても対応できるようにしています。m(_ _)m
    • good
    • 1
この回答へのお礼

大変勉強になります。

区切り処理では、自分で出来たのですが、複数のデータ処理でどうしても、数式で解決したかったのです。

なんとか解決できました。

ありがとうございました。

お礼日時:2014/08/13 12:55

元データがA1セルにあって、これをB1セルから右の3つのセルに分割するなら(説明ではA2セルと記載されていますがB1セルの間違いだと判断しました)以下の式を入力して右方向にオートフィルしてください。



=MID(SUBSTITUTE($A1," ",REPT(" ",100)),COLUMN(A1)*100-99,100)*1
    • good
    • 0
この回答へのお礼

大変勉強になります。

私の質問記入時に、ずれてしまっていたみたいです。
すみません。

無事解決することが出来ました。
ありがとうございました。

お礼日時:2014/08/13 12:57

一例ですが


A2=LEFT(A1,FIND(" ",A1)-1)
A3=MID(A1,LEN(A2)+2,FIND(" ",A1,LEN(A2)+2)-LEN(A2)-2)
A4=RIGHT(A1,LEN(A1)-LEN(A2&A3)-2)
    • good
    • 0
この回答へのお礼

大変勉強になりました。
ありがとうございました。

お礼日時:2014/08/13 12:52

真ん中


=MID(A1,FIND(" ",A1)+1,FIND(" ",A1,FIND(" ",A1)+1)-FIND(" ",A1)-1)

右側
=RIGHT(A1,LEN(A1)-FIND(" ",A1,FIND(" ",A1)+1))
    • good
    • 1
この回答へのお礼

とても勉強になりました。
ありがとうございました。

お礼日時:2014/08/13 12:51

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