• ベストアンサー

excel 文字操作

今、EXCELの関数に行きずまっています。 問題は   すずきたろう   → すずき たろう   さとうけん    → さとう けん   やまだはなこ   → やまだ はなこ     ・     ・      ・ と続きがあるのですが→にある通り、このかな氏名の苗字と名前の間に「空白」 をいれたいんです。 その関数があったら教えてください。 その他の方法もあったら教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • SE-TOMMY
  • ベストアンサー率77% (17/22)
回答No.2

はじめまして。 まず結果を先にお伝えすると、これを達成できる関数はありません。 おそらく完璧なものはできないでしょう。 「苗字と思わしき文字列」を 「苗字と思わしき文字列+全角スペース」って置換 ってな感じでお考えでしょうか? もし、実験的に関数を作るとすれば、 VBAのReplace関数、ExcelのREPLACE関数あたりを使うでしょう。 ただし精度は保証できません。 凡例として「ごとうだいすけ」という文字列があった場合、 極端な話、苗字が「後藤」かもしれませんし、「後藤田」かもしれません。 それと、どういった文字列を「苗字」とみなすのか、 ちゃんと定義付けするためのマスタを用意する必要がありますね。 mouseyさんがどの程度のデータ量に対して行いたいのかによって 効率の良し悪しは変わると思います。 あくまでもマクロやVBAの勉強としてであれば面白い関数ができるかもしれませんが。。。

mousey
質問者

お礼

詳しいお答えありがとうございます。 完璧なものはないんですね。最近、勉強し始めたので マクロやVBAの勉強はしてないんです。いずれはしたいですね。 それでは、教えていただいたのを試してみたいと思います。

その他の回答 (1)

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1

エクセルには、どこまでが苗字でどこからが名前なのか分かりません。 とりあえず、 =Left(A1,3) =RIGHT(A1,LEN(A1)-3) とし、後は手作業で修正、でしょうか。

mousey
質問者

お礼

ありがとうございます。 やってみます。

関連するQ&A