Excel のセルの編集中に [Alt] キー + [Enter] キーを押すと、セル内で改行をすることができます。
セルの幅に合わせた自動的な折り返しによる改行ではなく、任意の位置で改行ができるため、見た目にこだわる資料の作成をする際に頻繁に利用されます。

セル内での改行は、[Alt] + [Enter] という操作によって、その位置に改行をするための制御コードが挿入されたことによる結果です。

この改行をなくしたいとき、対象のセルが 1 つ 2 つなら手作業でも大した作業量にはなりませんが、一覧表のような形で、複数のセルに対してこの改行が挿入されている場合は、関数や置換を使ってまとめて処理をするのが効率的でしょう。

今回は CLEAN 関数を使用して改行を削除する方法について紹介します。

([置換] 機能によって削除する方法はこちらに記載しています。Excel 2007 以降の方は [Ctrl] + [H] で同じ [置換] ダイアログ ボックスを表示できます。)

Step 1.CLEAN 関数について

ヘルプの説明によると、「印刷できない文字を文字列から削除します。」とあります。

セルに入力されている文字列の中の、印刷はされない、または見えないけれどセルに入力されている"改行" という文字を削除した結果 (改行のない状態) を返してくれる関数ということです。

数式は下記のように作成します。

=CLEAN(文字列)

文字列には、対象となる文字 (実際にはそれが入力されているセルと考えてOK) を指定します。
たとえば、セル A5 に改行が含まれるセルがあるのであれば、「=CLEAN(A5)」という数式を作成します。

Step 2. 改行を削除した結果を表示するには

ここでは、セル B2 に入力されている文字列から改行を削除した結果を、セル C4 に表示します。

  1. セル C4 に、「=CLEAN(B2)」となるように数式を作成して [Enter] キーを 押します。

  2. セル B2 の文字データから改行を削除した結果 (ようは、改行のない文字列) が表示されます。

  3. 同じ列のほかのセル (C3 から C6 まで) に数式をコピーします。セル B3 から B6 の文字データの改行を削除した結果が表示されます。

おまけ 1

改行のないセルを作ることができた!改行ありのデータはもういらないから消してしまおう。ということで、B 列を削除するとこうなります。(参照するセルがなくなってしまったんだからあたりまえ)

CLEAN 関数での処理だけに限りませんが、参照しているセル (下図の場合は B 列) を削除するのなら、計算結果の値だけがセルに残るようにコピー&値だけを貼り付けをしましょう。

数式ではなく値 (文字列) がセルに入力されていれば、参照をしていたセルを削除してもエラーにはなりません。

おまけ 2

[Alt] + [Enter] によってセル内に改行を追加すると、自動的にセルの書式設定の [折り返して全体を表示する] がオンになります。
[折り返して全体を表示] をオフにすると "見た目" では改行がなくなります。

しかし、[折り返して全体を表示] をオフにすることは、表示形式 (見た目) を変更しているだけで、明示的に "改行を削除" しているわけではありません。(数式バーで確認すればわかりますね。)

作成者以外がすぐに判断のつかない一時的な回避策は継続的に使用する資料で使うことはあまりおすすめできません。きちんと本来の仕組みを理解したうえで上手に使用しないといけませんね。


Web ページからコピーした文字データをセルに貼り付けたら先頭に余計な記号が含まれてしまった、なんていう場合にも CLEAN 関数で処理できることがあります。

改行を削除する関数なのではなく、制御コードを削除した結果を返す関数であるということを意識して応用し、利用ができるとよいと思います。

あとは、[折り返して全体を表示] にだまされないことですね。


石田かのこ