文字列結合の練習問題(全5問)

色のついたセルに数式を入力して Enter。範囲はドラッグでも選べます

0 / 5 問クリア
Q1

姓と名をつなげて氏名にする

C2 に、姓と名をあいだに半角スペースを1つ入れてつなげてください。

解説を見る

& は左右の値をつなぐ記号です。文字をそのまま混ぜたいときは " で囲みます。ここでは半角スペース1つを挟んでいます。CONCAT や CONCATENATE を使っても同じ結果になりますが、& はどのバージョンの Excel でも使えます。

模範解答: =A2&" "&B2

セルの文字をつなげるには & を使います。関数では CONCAT、区切り文字を入れるなら TEXTJOIN です。

書き方
=セル1 & セル2
=A2&B2&C2

つなげる方法は3つある

住所を1つのセルにまとめる、姓と名を氏名にする、コードを組み立てる。別々のセルに入っている文字を1つにつなげる場面はよくあります。

書き方 特徴
& 基本。どのバージョンでも動く
CONCAT 範囲をまとめて渡せる
TEXTJOIN 区切り文字を入れられる
=A2&B2&C2                     → 東京都港区1-2-3
=CONCAT(A2:C2)                → 東京都港区1-2-3
=TEXTJOIN("-",TRUE,A2:C2)     → 東京都-港区-1-2-3

まずは & を覚える

&(アンパサンド)は、左右の値をつなぐ記号です。関数ではないのでカッコも要りません。

=A2&B2

文字をそのまま混ぜることもできます。 その場合は " で囲みます。

=A2&"さん"          → 山田さん
=A2&" "&B2          → 山田 太郎

" "(半角スペース1つ)を挟むのが、姓と名のあいだを空けるときの定番です。

& はどのバージョンの Excel でも使えます。 CONCAT や TEXTJOIN は比較的新しい関数なので、迷ったら & を選んでおけば確実です。

「セルの結合」とは別のもの

検索すると混ざりやすいのですが、「セルの結合」と「文字列の結合」は別の機能です。

やること 中身
セルの結合 複数のマスを1つの枠にする(見た目) データは左上のセルだけが残る
文字列の結合 文字をつなげて1つの値にする 新しい文字列ができる

セルの結合は見た目を整える機能で、並べ替えやフィルターが使えなくなるなど副作用があります。「A列とB列の内容を1つにまとめたい」のであれば、必要なのは文字列の結合のほうです。

つまずきポイント1: 日付をつなぐと数字が出る

日付が入ったセルをそのままつなぐと、読めない数字になります。

="納品日:"&A2      → 納品日:46270

Excel は日付を「1900年1月1日からの通し番号」で持っているためです。つなぐと、その数字がそのまま出ます。

読める形にするには TEXT関数 を挟みます。

="納品日:"&TEXT(A2,"m月d日")    → 納品日:9月5日

日付・時刻・金額など、書式で見せている値をつなぐときは TEXT が必要と覚えておいてください。数値でも、桁区切りを付けたいなら同じです。

=TEXT(A2,"#,##0")&"円"          → 1,234,567円

つまずきポイント2: 空白セルは詰まって出る

つないだセルが空だった場合、何も出ずに前後がくっつきます

A2="東京都"  B2=(空)  C2="1-2-3"

=A2&B2&C2             → 東京都1-2-3
=TEXTJOIN("-",TRUE,A2,B2,C2)    → 東京都-1-2-3
=TEXTJOIN("-",FALSE,A2,B2,C2)   → 東京都--1-2-3

区切り文字を使うときに問題になります。TRUE にすると空のセルを飛ばし、FALSE にすると空のぶんも区切り文字が入ります。ハイフンが2つ並んでしまう事故は、たいていここが原因です。

CONCAT — 範囲をまとめて渡す

つなぐセルが多いとき、& だと式が長くなります。

=A2&B2&C2&D2&E2&F2
=CONCAT(A2:F2)         ← 同じ意味

範囲で指定できるのが & との違いです。ただし区切り文字は入れられないので、ベタにつながります。

CONCATENATE という古い名前の関数もあり、こちらも同じように使えます。新しく書くなら CONCAT で構いません。

TEXTJOIN — 区切り文字を入れる

=TEXTJOIN(区切り文字, 空を飛ばすか, つなぐもの…)
位置 意味
1つめ あいだに入れる文字("-" "," "" など)
2つめ 空のセルを飛ばすかTRUE で飛ばす)
3つめ以降 つなぐセルや範囲
=TEXTJOIN(",",TRUE,A2:C2)      → 東京都,港区,1-2-3

この2つめの引数が TEXTJOIN の値打ちです。名簿から「該当者を読点でつなげた一覧」を作るときなど、空欄が混ざっても形が崩れません。

つまずきポイント3: 元のセルを消すと結果も消える

結合した結果は計算式なので、元のセルを消すと結果も消えます。

A2 と B2 をつないで C2 に氏名を作った
→ A2・B2 の列を削除すると、C2 が #REF! になる

元の列を片付けたいときは、結合した列をコピーして「値として貼り付け」してから削除してください。数式ではなく文字そのものに変わるので、元が消えても残ります。

結合した結果は文字列になる

& でつないだ結果は、見た目が数字でも文字列です。

=A2&B2      A2=1, B2=2 のとき → "12"

計算式の中でなら数値として解釈されますが、SUM で範囲を合計すると無視されます

=C2+1            → 13      計算はできる
=SUM(C2:C3)      → 0       合計には入らない

集計に使う列と、表示のためにつないだ列は分けてください。 これは TEXT関数と同じ注意点です。

関連する関数

関数 用途
TEXT 数値や日付を、指定した見た目の文字列にする
LEFT / RIGHT / MID 逆に、文字列から一部を取り出す
TRIM 余分な空白を取り除く。つなぐ前の掃除に使う
COUNTIF 条件に & を使う場面がある(">="&B8

次に進むには

& は文字をつなぐだけでなく、条件を組み立てるときにも使いますCOUNTIF でセルの値を基準にするときの ">="&B8 が、まさにこの結合です。

「記号は " の中、セルは " の外」という書き方の意味が、結合を知っているとすんなり分かるようになります。