dポイントプレゼントキャンペーン実施中!

Excelの1つのセルに「CHSK200510-3」
というような文字が入っていたとします。
それを、「CHSK」と「200510-3」のセルに分けることは出来ますでしょうか?
ただし、「CHSK」の部分は毎回4文字ではなく、5文字や6文字、7文字の
アルファベットの場合もありイレギュラーなのです。。。
文字の個数が決まっていれば文字列関数で出来たと思うのですが、
取り出す文字数が決まっていない場合はどうすればよいでしょうか?
どうぞよろしくお願い致します。

A 回答 (4件)

A1に文字列が入っています。

B1に=LEFT(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},(a1)&1234567890))-1)
C1に =RIGHT(A1,LEN(A1)-LEN(B1))と入力
後は、下にドラッグして下さい。
    • good
    • 0
この回答へのお礼

出来ました!
ありがとうございました!

お礼日時:2005/10/26 14:53

こんにちは。


Wendy02流です。

B1:
=LEFT(A1,MATCH(FALSE,INDEX(ISERROR(MID(A1,ROW($A$1:$A$256),1)*1),,),0)-1)
C1:
=SUBSTITUTE(A1,B1,"")

文字列は、256字以降になれば表示できませんから、Row(A1:A256)にします。Index は、配列を一旦ワークシートで扱える状態にしています。全角でも可能です。
    • good
    • 0
この回答へのお礼

ご回答頂き、ありがとうございました。

お礼日時:2005/10/26 14:55

試行錯誤でやったのですが


配列数式ですが
(1)英字の塊が初めに来る
(2)英字の塊が2箇所に分散していない
という仮定で
=MID(A1,1,SUM(IF(CODE(MID(A1,ROW(H1:H7),1))>96,1,0)))
と入れて、SHIFT+CTRL+ENTERの同時押しをする。
H1:H7はどこでもよく、7は英字の見込み最大文字数に置き換えてください。
96は97がaの文字コードですので使ってます。
数字部分は、MID関数で、上記+1の位置からLEN(A1)までの長さをとればよい。
配列数式にはまっているので、考えた結果です。
    • good
    • 0
この回答へのお礼

詳細な回答をありがとうございました。

お礼日時:2005/10/26 14:54

こんにちは。



数字の前がアルファベットなら
=MID(A1,MIN(FIND({"1","2","3","4","5","6","7","8","9","0"},JIS(A1)&"1234567890")),256)
    • good
    • 0
この回答へのお礼

早々のご回答ありがとうございました。

お礼日時:2005/10/26 14:52

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

このQ&Aを見た人はこんなQ&Aも見ています