• ベストアンサー

エクセルで空白文字の前後を入れ替えることってできますか?

エクセルでひとつのセルにある文字列の中で、空白の文字列が間にある時、前後を入れ替えた文字列を作りたいのです。 例えば  UTADA HIKARU HAMASAKI AYUMI KURAKI MAI ・・・・・ を HIKARU UTADA AYUMI HAMASAKI MAI KURAKI ・・・ にしたいのです。 なるべく簡単な方法で変換したいのですが・・・・関数を使って出来ないでしょうか。または、マクロを使わないと出来ないでしょうか?(マクロはよく分からないので・・・) データ数が100件くらいあるので、上手い方法は無いものでしょうか?宜しくお願いします。

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

  • ベストアンサー
  • s_yoshi_6
  • ベストアンサー率73% (1113/1519)
回答No.2

A列にA1からデータが入っているとして、例えばB1に =RIGHT(A1,LEN(A1)-FIND(" ",A1))&" "&LEFT(A1,FIND(" ",A1)-1) と入力して以下コピーでできます。 RIGHT(A1,LEN(A1)-FIND(" ",A1)) は、空白が前から何番目に入っているかを調べて、一番後ろからその後までの文字列を取り出したもの LEFT(A1,FIND(" ",A1)-1) は、同じく空白が前から何番目に入っているかを調べて、先頭からその前までの文字列を取り出したもの 上記2つと間の空白を「&」でつなげたものが上記の式の意味です。

take103
質問者

お礼

FIND関数を使った方法もあるのですね。非常に勉強になりました。ありがとうございました。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

Mid関数利用例 =MID(A1&" "&A1,FIND(" ",A1)+1,LEN(A1)) とか =MID(A1,FIND(" ",A1)+1,LEN(A1)-FIND(" ",A1))&" " &MID(A1,1,FIND(" ",A1)-1) 前者は例えば「UTADA HIKARU UTADA HIKARU」をつくって HIKARUのHから真中部を抜き出しする。

take103
質問者

お礼

いろいろな方法があるのですね。勉強になりました。 ありがとうございました。

  • MSZ006
  • ベストアンサー率38% (390/1011)
回答No.1

A1セルに入っている文字列を加工する場合、 =MID(A1,SEARCH(" ",A1)+1,99)&" "&LEFT(A1,SEARCH(" ",A1)-1) という計算式を適当なセルに入力します。

take103
質問者

お礼

早々とご回答ありがとうございます。SEARCH関数を使えば出来るのですね。本当に助かりました。

関連するQ&A

  • Excelで空白を取り除く方法(97限定)

    いつもお世話になってます。 Excelで、関数、VBAどちらでもかまわないのですが、文字列中から 完全にスペースを取り除く、スマートな方法がありましたら教えて 頂きたいと思います。 力技ではかろうじてできるのですが、やはり出来れば既存の関数や メソッド(VBAではプロシージャですか…)で美しく行えればいいなと 思っています。 直、前後の空白ではなく、文字列中に含まれるすべての空白です。 Trimで前後の空白が消せるのは確認済みです。また、バージョンは 97限定でお願いします。

  • Excel 2007 文字列について

    Excel 2007 文字列について 郵便番号に「-」を入れたいです。 1つのセルに例えば「0001111」とある場合に 「000-1111」と変換したいです。 どのような関数またはマクロを作成すればよろしいでしょうか。

  • エクセル セル内の文字列を空白から空白まで抽出したい。

    一つのセルに入っている文字列を複数のセルに分割したいのですが良い方法が見つかりません。 具体的には 「商品名 単価 数量 金額」が一つのセルに入っているのですが、これをそれぞれ「商品名」「単価」「数量」「金額」というように別のセルに分けたいのです。 条件は次です。 ・文字列の区切りは空白(スペース)。 ・商品名や金額などそれぞれの文字列の長さは決まっていません。 ・商品名には名称の中に空白が使われている場合があります、その数も決まっていません。 以上です。いろいろ関数を使ってやってみたのですが、どうもうまくいきません。 どなたか良い方法がありますでしょうか、よろしくお願いいたします。

  • エクセル 並べ替え 数字の文字列→漢字の文字列→空白セル の順にしたいです。

    いつも教えていただきありがとうございます。 【状況】 同じ列に以下のような文字列が並んでいます。 未回答 空白セル 20090208 20090210 未定 空白セル 20090101 【実現したいこと】 この時、 数字昇順(実際には日付) ↓ 文字列(未定、未回答) ↓ 空白セル の順に並べ替えをしたいです。 状況補足 ・全ての文字列はVLOOKUP関数の結果として表示されています。 ・この操作をマクロに組み込むことを考えています。 ・空白セルは目立たなければ他の記号などに置き換えても構いません。 上記内容可能でしょうか? お教えいただけましたら幸いです。 何卒よろしくお願いいたします。

  • エクセルのマクロ(指定列の空白にひとつ上の文字を入力し続ける)

    エクセルのマクロを教えてください。 指定列の空白にひとつ上の文字を入力し続けるマクロです。 A列指定 A2からスタートし、1000行くらいあるデータ 空白があった場合ひとつ上の文字を入力 空白は、2行連続・3行連続となることもあるが大抵は1行空白 この場合、空白セルの上で一番近いデータをコピーする A列のデータは、文字・数字・日付と様々 1000行ある場合もあるが、それ以下の場合もあるので、10行空白が続いたらマクロが自動的に終了 エクセル2003使用 よろしくお願いいたします。

  • EXCELで文字列の並べかえ

    こんにちは。EXCELの関数を教えてください。マクロは使用しない方法でお願いします。 行いたい内容は、セル内に入力した「1234567の文字列を7654321」や、「abcdをdcba」に並べかえることです。 つまり、EXCELのセル内に入力した文字列を逆から並べ替えたいのです。 お時間のある方、ぜひ教えてください。 よろしくお願いします。

  • excelであるセル内の数値をある文字に変換したい

    excelで、ある列のセルにある数値の内、ある指定範囲内の数値のみある文字列に変換したい場合、どんな方法(関数やマクロ)があるでしょうか? 例として 10 20 100 →XX 1000→XX XX 50 100以上をXX(範囲外)に変換したい

  • Excelで前後に紛れ込んでいる空白を一括で削除したいです。

    Excel2003使用者です。 セル内の文字で、その前後に空白があるものが含まれています。 その空白をシート内で一括で削除する方法を教えて下さい。 削除したいのは前後の空白のみで、文字間の空白はそのままです。 (もし前に空白があれば、文字は左詰めされる) つたない説明でお分かりでしょうか? よろしくお願いします。

  • エクセルの文字列を空白で文字数を揃えたい

    皆様のお知恵を拝借したく書き込んでいます。 どうか宜しくお願いいたします。 エクセルにあるデータをカンマ区切りCSVに したいと思っております。 *例 1,1,1,3,1,2,11,・・・ これに数値を空白で埋めて四文字(0001,等)にさせたいのですが、 どのような方法が可能でしょうか? ・試したこと 1、サクラエディタでの正規表現 でも、置換後の文字列を動的に渡せるのかわからなくて失敗。 2、セルの表示形式 数値の桁数によって変化させる方法がわからず 3、エクセルマクロ LEN関数を使ってループさせれば可能? (時間がかかりそうです) 以上、宜しくお願いします。

  • エクセルの文字内の空白の削除

    EXCELの表の列に下記のようにカタカナで氏名が入っています。 ヤマダ タロウ ヤマダジロウ できれば、全て空白を詰めて下記のように修正したいのですが、エクセルの関数若しくはBVAでは可能でしょうか??trim関数は前後の空白だけ削除ですよね?? 宜しくお願いします ヤマダタロウ ヤマダジロウ

専門家に質問してみよう