- ベストアンサー
エクセル 文字列-文字列 を数式で区切りしたい
文字列の文字数が列で同じならLEFT、RIGHTで作ることができるのですが、 左右の文字数がランダムの場合がわかりません。 (例) A列 AAA-AAAAAA AA-AAAAA AAAAA-AA ↓ B列 C列 AAA AAAAAA AA AAAAA AAAAA AA この時のB1とC1の数式の作り方をご教授ください。 宜しくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは! 「-」は全角のマイナスとします。 B1セルに =LEFT(A1,FIND("-",A1)-1) C1セルに =MID(A1,FIND("-",A1)+1,LEN(A1)) または =SUBSTITUTE(A1,B1&"-","") としてフィルハンドルで下へコピーしてみてください。m(_ _)m
その他の回答 (2)
- MackyNo1
- ベストアンサー率53% (1521/2850)
ご使用のExcelのバージョンが2007以降なら以下の式を入力して下方向にオートフィルコピーします。 B1セル =IFERROR(LEFT(A1,FIND("-",A1)-1),"") C1セル =IFERROR(MID(A1,FIND("-",A1)+1,100,"") 実際は関数を使わずに、A列を選択して「データ」「区切り位置」で「次へ」をクリックして、区切り文字の欄で「その他」の枠に「-」を入力し、「次へ」で出力先にB1セルを選択して「完了」するのが簡単です。 Officeソフトはバージョンによって使用できる機能や操作方法が大きく異なりますので、質問の際には必ずバージョンを明記するようにしましょう。
お礼
無事、返すことができました。 ありがとうございます。 以後バージョン情報など注意いたします。
- shintaro-2
- ベストアンサー率36% (2266/6245)
必ずハイフンがあるのだったら left,midの引数として FIND("-",a1) として±1ぐらいで文字列の長さを調節すればOKです。 例えば、 =left(a1,find("-",a1)-1) =mid(a1,find("-",a1)+1,10) midの場合、大目の長さを指定しても問題ありません。 =right(a1,len(a1)-find("-",a1)) といった具合です
お礼
無事に返すことができました。 ありがとうございました。
お礼
ありがとうございます。 見事に作ることができました。