見出し画像

Excel Tips ~セル内の改行【CHAR関数】

このノートは学校という場において、私が校務の中でExcelを使ってきた事について書き留めています。
具体的な操作というより、どういうシチュエーションでどんな使い方をしてきたか、ということを中心に綴っていきます。

今回の「めあて」

今回の目的は、文字列の結合をする際に任意の場所で改行させる事です。
そのと説明のために宛名ラベルを作ります。
とりあえずこんな感じです。

使用している住所氏名は架空のダミーデータで、実在の場所、人物とは全く関係ありません。
疑似個人情報生成

住所が改行されているのがミソです。

今回使った機能

  • 文字の連結

  • セルの書式設定

  • CHAR関数を使ったセル内の改行(New)

文字の結合についてはこちらを

セルの書式設定についてこちらを

それぞれ参考にしてください。

CHAR関数について

今回の真打ち、CHAR関数です。
数値を記述すると指定された文字が返ってきます。

=CHAR(数値)

どういう数字を記述したらどんな文字が返って来るか知りたかったらCODE関数を使います。

=CODE(文字列)

と言うことはCHAR関数の引数として97を記述すればaが返って来ると言うことになります。

CHAR関数を使って改行する

実は改行というのも文字の一種になります。
いわゆる制御文字というヤツで表示されません。
まあ、あえて言うならワープロなどで改行したときに現れる ↵ だと思っていただければ良いかと思います。
この改行を出力する時にCHAR関数を用います。
引数として記述する数値は10です。

=CHAR(10)

この関数と文字列を結合すると改行できるようになります。

CHAR関数を使ったセル内での改行

姓、名、郵便番号、都道府県、市区町村、町域、番地と分割されたセルを結合し、別のセルに宛名ラベルとして表示します。
宛名ラベル内の式は次のようになります。

まずは住所の表示についてです。
郵便番号の後で改行して住所を表示させます。

=TEXT(G4,"〒@")&CHAR(10)&CONCAT(H4:K4)

TEXT(G4,"〒@")の部分についてはTEXT関数で書式を設定しています。
第2引数"〒@"についてですが、番号の先頭に「〒」をつけるようにするためにはこのように記述します。
さらに7桁の数字で間にハイフンを入れたければ"###-####"とします。

さて次に続くのがCHAR(10)です。
改行ですが文字と同じ扱いになります。&演算子でつなぎます。
ただ、これだけでは改行は表示されません。セルの書式設定で、「配置」タブの「折り返して全体の表示(W)」のチェックを入れておきましょう。

三つ目のCONCAT(H4:K4)は連続するセルなのでCONCAT関数で結合します。
もちろん全部CONCAT関数でまとめてもいいと思います

=CONCAT(TEXT(G4,"〒@"),CHAR(10),H4:K4)

宛名の表示

氏名はTEXTJOIN関数で区切り文字は" "(空白)として結合して姓と名の間うを開けます。

=TEXTJOIN(" ",TRUE,E4:F4)

また「様」はセルの書式設定により表示するようにしてあります。(下図)
書式設定についてはユーザー定義で"@"様" としてあります。
このあたりはTEXT関数と同じで、表示する時は@の部分が氏名と置き換わる訳です。

もちろんセルの書式設定をしなくても

=TEXT(TEXTJOIN(" ",TRUE,E4:F4),"@ 様")

としても同じ結果になります。

おわりに

郵便番号と住所を異なるセルに表示させる方法もありますが、帳票全体のレイアウト編集が面倒臭くなるときもあります。
そういうときには便利なやり方なのかな、と思います。

この記事が気に入ったらサポートをしてみませんか?