Excelで入力途中にセル内改行するにはAltとEnterで実行できますが、既に入力された文字列や文章に改行を挿入する場合は置換機能や改行関数を使います。ここでは特定の文字を改行コードと置換して複数のセルをまとめて改行させる方法と、CHAR関数で改行コードを呼び出して一括改行させる方法を図解します。
エクセルの「置換」で複数セルを一括で改行する
エクセルの検索機能の「置換」を使って文章を改行させる方法です。
改行位置に区切り文字がある場合、それを改行コードに置換することで改行を実行します。この例では会社名・部署名・役職名の区切り「・」(中黒)を改行コードに置換して複数のセルの文字列を一括で改行させます。
「ホーム」タブの「編集」グループにある「検索と選択」ボタンから「置換」をクリックします。
ダイアログが開いたら、「検索する文字列」に中黒「・」を入力し、「置換後の文字列」にカーソルを置いて、キーボードのCtrlを押しながらJを押します。(この時、「置換後の文字列」はほとんど空白に見えますが、実際はCtrl+Jで改行コードが入力され、よく見ると小さな点が点滅しています)
「すべて置換」をクリック。
小さな画面が開いて、シート上で置換された改行が幾つあるか数えて教えてくれます。
シート上の複数のセル内にある「・」が全て改行コードに置換わり、その位置で改行されます。
ただ、セルの高さはそのままなので、最初の改行前の文字列しか表示されず、改行が正常に反映されていないように見えるかもしれません。
シートの左上角(行列が交わる箇所)をクリックしてシート全体を選択し、行の境界線のどれかをダブルクリックします。
行の高さが自動調整され、セル内の改行された文字列全体が表示されます。
関数で改行コードを置換し複数セルを一括で改行する
前章と同じ例で、置換関数のSUBSTITUTEと改行関数のCHARを使って一括改行します。
この場合は、改行後の文字列を表示するセル範囲を選択して、そこにSUBSTITUTEの数式を入力します。(※旧バージョンのExcelでは最初の行(B2セル)だけ選択して後でオートフィルコピーする)
SUBSTITUTE関数の引数は以下のダイアログのように指定します。第三引数「置換文字列」にCHAR関数を指定するのがポイントです。CHAR関数は文字コードから文字を求める関数で、CHAR(10)で改行コードを呼び出すことができます。
- 第一引数「文字列」:置換で改行させる元のセルまたはセル範囲
- 第二引数「検索文字列」:改行コードと置き換える元の文字列を「”」で括って指定(この例では”・”)
- 第三引数「置換文字列」:CHAR関数で改行コードをCHAR(10)と指定
- 第四引数「置換対象」:空欄にして、すべての検索文字列を対象にする
数式はこうなります➔ =SUBSTITUTE(B2:B6,”・”,CHAR(10))
数式を確定させると、以下のように表示されるかもしれません。一見したところ、「・」が削除されただけでCHAR(10)が反映されていないようですが、この場合は「ホーム」タブ➔「配置」➔「折り返して全体を表示する」をクリックしてONにして下さい。
関数による改行が反映されました。
まとめ
- 区切り文字で連結されている文字列なら、「ホーム」の「検索と選択」➔「置換」から、区切り文字を改行コードに置換えてシート上の複数セルを一括改行できる
- 改行コードは「Ctrl」と「J」を同時に押して入力できる
- 置換後のセルはシート全体を選択して行の境界線のどれかをダブルクリックすることで高さの自動調整ができる
- SUBSTITUTE関数の引数「置換文字列」にCHAR関数で改行コードをCHAR(10)と指定すれば改行することができる
- この場合、改行を反映させるためには折り返し機能をONにする必要がある
置換機能や置換関数を使った改行方法をご紹介しました。改行コードを直接入力するなら「Ctrl+J」、関数で呼び出すなら「CHAR(10)」。Excelで改行を置換する時、この二つを覚えておけば楽勝です。