• ベストアンサー

【Excel】置換で改行を入れる方法をおしえてください。

MicroSoftのExcelで、「文字列」を「改行」に置換する方法のかたがいらっしゃいましたら、おしえてくださいませ。 例えば、 「1」を 「 」 に置換するということです。 うまくご説明できず、申し訳ありませんが、よろしくお願いいたします。

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

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

abc1deの文字列がA1にあるとして, B1セルに=SUBSTITUTE(A1,"1","x")を入れると、B1は abcxdeになります。一般に「改行」は文字コードでは CHAR(10)なので、=SUBSTITUTE(A1,"1",CHAR(10))とB2に入れると、B2セルは"abc・de"となりますが、改行(ALTを押しつつENTERを入れると同じ効果)はしません。 なぜかは私の知識の限界外なんですが。 しかしVBAで Sub test01() Cells(3, "B") = Replace(Cells(1, "A"), "1", Chr(10)) End Sub を実行すると改行します。 Function kaigyo(a) kaigyo = Replace(a, "1", Chr(10)) End Function にして,例えば A6セルにabc1deと入れ B6セルに=kaigyo(A6)とすると"abc・de"となり改行しません。 値としてセットするか、Char(10)の作用・動作として発揮させるかの違いがあるようです。 結局VBAで Sub test02() Dim cl As Range For Each cl In Selection cl = Replace(cl, "1", Chr(10)) Next End Subを実行すると望み通りになります。 これは置換したいセル範囲(複数でも可)を指定して 実行すれば、1は消え、その位置でセル内の改行になります。

cazz06
質問者

お礼

詳細かつ丁寧にご回答くださって、ありがとうございます。 仕事でよく使うことがあり、なにかよい方法がないか調べていたのですが、自力では解答にたどりつけずにいました。 ありがとうございます!

その他の回答 (2)

  • comv
  • ベストアンサー率52% (322/612)
回答No.3

こんばんは ご質問をそのまま解釈すると ・範囲選択 ・編集 置換  検索文字列 「*」  置換文字列 「Ctrl+Jキー」 (「」の部分は文字入力 間のCtrl+J はキー操作です キー操作では、なにも表示されませんがOKです)  全て置換後 改行されなければ 書式設定 配置 折り返して全てを表示 にチェック

cazz06
質問者

お礼

ありがとうございます。 おかげさまで、これまでできなかった作業をマスターできそうです。 ご丁寧な回答をありがとうございました。

  • kero33
  • ベストアンサー率44% (20/45)
回答No.1

これなんていかがでしょう(^-^)

参考URL:
http://arena.nikkeibp.co.jp/tec/excel/gaz/287/
cazz06
質問者

お礼

改行コードというのがあったのですね、ありがとうございます。 たすかりましたー。

関連するQ&A