- ベストアンサー
エクセルのif文について
エクセル2007を使用しています。 あるセルの中に、スペースが5個以上あったら、そのセルの中のそれ以後にあるスペース、文字列を全て削除したいのですが、関数の書き方がわかりません。 どなたかご教授お願いできますでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
今仮に、元となる文字列がA1セルに存在しているものとしますと、次の様な関数となります。 =IF(LEN(A1)-LEN(SUBSTITUTE(ASC(A1)," ",""))<5,"",LEFT(A1,FIND("゛",SUBSTITUTE(ASC(A1)," ","゛",5))-1)) 尚、この式では、スペースが半角文字と全角文字のどちらの文字で入力されていても関係なく動作致します。(全角のスペースと半角のスペースが混在していても構いません)
その他の回答 (2)
- keithin
- ベストアンサー率66% (5278/7941)
=LEFT(TRIM(A1),FIND("\\\",SUBSTITUTE(TRIM(SUBSTITUTE(A1," "," "))&" "," ","\\\",5))-1) などのように。 #実際のデータが全角のスペースなのか半角のスペースなのか指定がないので,そのぶん冗長な数式になりました #途中に「&" "」のようになっている部分には,半角スペースが5個記入してあるので間違えないようにしてください #途中全角スペースと半角スペースを両方使った式なので,間違えないように回答からコピーして使ってください
お礼
大変ありがとうございます。 さっそく使ってみます!!
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 スペースは半角としていますので全角の場合、数式内のスペースを変更して下さい。 =IF(LEN(A1)-LEN(SUBSTITUTE(A1," ",""))>=5,MID(A1,1,FIND(CHAR(1),SUBSTITUTE(A1," ",CHAR(1),5))),A1)
お礼
ありがとうございます!