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

A1に
サコ豊臣ココ1E23
B1に
サコ豊臣ココ
C1に
1E23
という具合に数字の手前と後に分けて出したいのです
B1とC1に入る式を教えてください。

例)
ココナラA1B2
この場合
B1=ココナラ
C1= A1B2

このような感じです。
よろしくお願いいたします。

質問者からの補足コメント

  • 文字数は決まっておりません

      補足日時:2022/10/25 23:43

A 回答 (7件)

ローテク数式で少々長いですが



B1=LEFT(A1,MATCH(1,INDEX(ISNUMBER(--MID($A1,ROW(INDIRECT("1:"&LEN(A1))),1))+((CODE(ASC(MID($A1,ROW(INDIRECT("1:"&LEN(A1))),1)))>64)*(CODE(ASC(MID($A1,ROW(INDIRECT("1:"&LEN(A1))),1)))<91)),0),0)-1)

C1=SUBSTITUTE(A1,B1,"")

※B1はA列の文字列から1もじづつ英数字か判定し、区切り位置を探し、
前部分を取り出しています。
    • good
    • 0

「A」は数字じゃないよね

    • good
    • 0

数字の手前と後に分けたい。


サコ豊臣ココ|1E23  ⇒ これはわかります。
ココナラ|A1B2    ⇒ ココナラA|1B2 こうなるのでは?
    • good
    • 0

こんにちは



文字数などが決まっておらず、特別な区分に無い指定の文字で分割したいという場合には、1文字ずつ調べるしか方法は無いと思います。
作業列を用いれば多少簡単になりますが、直接算出したいとなるとそれなりに面倒な関数式になります。

また、すでにNo2様がご指摘のように、ご質問文の例示と説明とが矛盾しており、何をご希望なのかよくわかりません。


以下は、
 半角数字「0~9」が最初に出現するところで、文字列を分割する
とした場合の例です。
(指定の文字範囲が異なる場合には修正してください)

ご質問のレイアウトで、B1セルに、
=IFERROR(LEFT(A1,AGGREGATE(15,6,ROW(OFFSET(A$1,,,LEN(A1)))/(CODE(MID(A1,ROW(OFFSET(A$1,,,LEN(A1))),1))>47)/(CODE(MID(A1,ROW(OFFSET(A$1,,,LEN(A1))),1))<58),1)-1),A1 & "")

C1セルに、
=IFERROR(MID(A1,AGGREGATE(15,6,ROW(OFFSET(A$1,,,LEN(A1)))/(CODE(MID(A1,ROW(OFFSET(A$1,,,LEN(A1))),1))>47)/(CODE(MID(A1,ROW(OFFSET(A$1,,,LEN(A1))),1))<58),1),LEN(A1)),"")

ではいかがでしょうか?
    • good
    • 0

条件が数字ではなく、全角文字と半角文字とを分けるならば


B1セルに
 =LEFT(A1,LENB(A1)-LEN(A1))
C1セルに
 =RIGHT(A1,LEN(A1)*2-LENB(A1))
で対応できると思います。
あくまでも、全角と半角で分けているだけです。
「エクセルの関数」の回答画像3
    • good
    • 0

真面目に回答してみます。



質問の前提である
 「数字の手前と後に分けて出したい」
という条件が、

例)
ココナラA1B2
この場合
B1=ココナラ
C1= A1B2

と、前提条件を無視した結果を求めているので無理。
    • good
    • 0

文字数が決まってるなら、LEFT関数とRIGHT関数を使えば、抽出出来るね。


文字数が決まっていないと厳しいかも?
(私も詳しい方じゃないのでね。)
    • good
    • 0

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