STEP 22:CONCATENATE/TEXTJOIN(文字列結合)

🔗 Step 22: CONCATENATE/TEXTJOIN(文字列結合)

バラバラの文字をつなげて1つにまとめる関数をマスター!

📋 このステップで学ぶこと

  • &記号を使った文字列結合(最も簡単な方法)
  • CONCATENATE関数の基本
  • TEXTJOIN関数の使い方(区切り文字の自動挿入)
  • 空白セルの扱いと注意点
  • 日付・数値の結合とTEXT関数
  • 実務での活用例(姓名結合、住所作成、ファイル名生成など)

🎯 1. 文字列結合とは

文字列結合の意味

文字列結合とは、複数のセルの文字をつなげて1つの文字にすることです。例えば「姓」と「名」を結合して「フルネーム」を作ったり、「都道府県」「市区町村」「番地」を結合して「住所」を作ったりできます。

🔑 文字列結合を一言で言うと

バラバラの文字をくっつけて、1つの長い文字を作る」機能です。
レゴブロックを組み合わせるようなイメージで、複数のパーツ(文字)を1つの作品(完成した文字列)にします。
📊 文字列結合のイメージ
A1セル
田中
+
B1セル
太郎
C1セル(結果)
田中太郎
=A1 & B1
💡 文字列結合が使われる場面
  • 姓名の結合:「田中」+「太郎」→「田中太郎」
  • 住所の作成:「東京都」+「渋谷区」+「1-1-1」
  • 商品コード:「A」+「-」+「001」→「A-001」
  • ファイル名:「2025-01-15」+「_」+「報告書」
  • URL生成:「https://example.com/product/」+「12345」

📝 2. &記号を使った結合(一番簡単!)

最も簡単な文字列結合の方法は、&(アンパサンド)記号を使う方法です。セルとセルの間に「&」を書くだけで結合できます。

📌 &記号の基本構文

=セル1 & セル2

または、固定の文字を挟む場合:

=セル1 & “文字” & セル2

3つの基本パターン

✅ パターン1:スペースなしで結合
A2
田中
+
B2
太郎
田中太郎
=A2 & B2
✅ パターン2:スペースを入れて結合
A2
田中
+
スペース
” “
+
B2
太郎
田中 太郎
=A2 & ” ” & B2
✅ パターン3:記号で結合(商品コード)
A2
A
+
ハイフン
“-“
+
B2
001
A-001
=A2 & “-” & B2

実際にやってみよう

📝 姓名の結合(※横スクロールできます)

【例1:スペースなしで結合】 A列 B列 C列 D列 +——–+——–+————+—————-+ 1 | 姓 | 名 | フルネーム | 計算式 | +——–+——–+————+—————-+ 2 | 田中 | 太郎 | 田中太郎 | =A2&B2 | +——–+——–+————+—————-+ 3 | 佐藤 | 花子 | 佐藤花子 | =A3&B3 | +——–+——–+————+—————-+ C2の数式: =A2&B2 → 「田中」と「太郎」がくっついて「田中太郎」 【例2:スペースを入れて結合】 A列 B列 C列 D列 +——–+——–+————-+——————+ 1 | 姓 | 名 | フルネーム | 計算式 | +——–+——–+————-+——————+ 2 | 田中 | 太郎 | 田中 太郎 | =A2&” “&B2 | +——–+——–+————-+——————+ 3 | 佐藤 | 花子 | 佐藤 花子 | =A3&” “&B3 | +——–+——–+————-+——————+ C2の数式: =A2&” “&B2 → 「田中」と「 」(スペース)と「太郎」で「田中 太郎」 【ポイント】スペースは ” ” (ダブルクォーテーションで囲む)
🎯 &記号の3つのポイント
  • セルとセルの間に&を書く
  • 固定の文字(スペースや記号)は“ ”(ダブルクォーテーション)で囲む
  • いくつでもつなげられる:=A2&” “&B2&” “&C2

🔗 3. CONCATENATE関数

&記号の他に、CONCATENATE関数という正式な関数もあります。機能は&記号と同じです。

📌 CONCATENATE関数の構文

=CONCATENATE(文字列1, 文字列2, 文字列3, …)

意味:カッコ内の文字列を順番につなげる
ポイント:最大255個まで指定可能
📊 CONCATENATE関数で住所を作成
A2
東京都
B2
渋谷区
C2
1-1-1
=CONCATENATE(A2, B2, C2)
D2(結果)
東京都渋谷区1-1-1

📝 CONCATENATE関数の例(※横スクロールできます)

【例:姓名の結合】 A列 B列 C列 D列 +——–+——–+————-+—————————+ 1 | 姓 | 名 | フルネーム | 計算式 | +——–+——–+————-+—————————+ 2 | 田中 | 太郎 | 田中 太郎 | =CONCATENATE(A2,” “,B2) | +——–+——–+————-+—————————+ 3 | 佐藤 | 花子 | 佐藤 花子 | =CONCATENATE(A3,” “,B3) | +——–+——–+————-+—————————+ C2の数式: =CONCATENATE(A2,” “,B2) → A2(田中)とスペースとB2(太郎)を結合 【例:住所の作成】 A列 B列 C列 D列 E列 +———-+———-+——–+——————+———————+ 1 | 都道府県 | 市区町村 | 番地 | 完全住所 | 計算式 | +———-+———-+——–+——————+———————+ 2 | 東京都 | 渋谷区 | 1-1-1 | 東京都渋谷区1-1-1 | =CONCATENATE(A2,B2,C2) | +———-+———-+——–+——————+———————+ 3 | 大阪府 | 大阪市 | 2-2-2 | 大阪府大阪市2-2-2 | =CONCATENATE(A3,B3,C3) | +———-+———-+——–+——————+———————+
🔑 &記号とCONCATENATEの違い

機能は同じです!普段は&記号の方が短くて簡単なので、&記号を使う人が多いです。ただし、複雑な数式ではCONCATENATEの方が見やすいこともあります。
⚠️ Excel 2019以降の情報

Excel 2019以降では、CONCATENATEはCONCAT関数に置き換えられました。CONCAT関数の方が新しくて便利ですが、CONCATENATEも互換性のため使えます。

✨ 4. TEXTJOIN関数(最強の結合関数)

TEXTJOIN関数は、区切り文字を自動的に入れてくれるとても便利な関数です。Excel 2019以降、Googleスプレッドシートで使えます。

📌 TEXTJOIN関数の構文

=TEXTJOIN(区切り文字, 空白を無視するか, 範囲)

引数の説明:
  • 区切り文字:セル間に入れる文字(”,”、” “、”-“など)
  • 空白を無視:TRUE(空白セルを飛ばす)またはFALSE(空白も含める)
  • 範囲:結合したいセルやセル範囲
📊 TEXTJOIN関数の空白セル処理
✅ TRUE:空白セルを無視する(推奨)
A2
りんご
B2
(空白)
C2
ぶどう
=TEXTJOIN(“,”, TRUE, A2:C2)
結果
りんご,ぶどう
✓ カンマが連続しない
❌ FALSE:空白セルも含める
A2
りんご
B2
(空白)
C2
ぶどう
=TEXTJOIN(“,”, FALSE, A2:C2)
結果
りんご,,ぶどう
✗ カンマが連続してしまう

📝 TEXTJOIN関数の使用例(※横スクロールできます)

【例1:複数の商品名をカンマで結合】 A列 B列 C列 D列 E列 +——–+——–+——–+——————+—————————+ 1 | 商品1 | 商品2 | 商品3 | 商品リスト | 計算式 | +——–+——–+——–+——————+—————————+ 2 | りんご | みかん | ぶどう | りんご,みかん,ぶどう | =TEXTJOIN(“,”,TRUE,A2:C2) | +——–+——–+——–+——————+—————————+ 3 | 鉛筆 | 消しゴム | ノート | 鉛筆,消しゴム,ノート | =TEXTJOIN(“,”,TRUE,A3:C3) | +——–+——–+——–+——————+—————————+ D2の数式: =TEXTJOIN(“,”,TRUE,A2:C2) → A2、B2、C2をカンマで区切って結合 【例2:空白セルがある場合】 A列 B列 C列 D列 E列 +——–+——–+——–+————–+—————————+ 1 | 商品1 | 商品2 | 商品3 | 商品リスト | 計算式 | +——–+——–+——–+————–+—————————+ 2 | りんご | (空白) | ぶどう | りんご,ぶどう | =TEXTJOIN(“,”,TRUE,A2:C2) | +——–+——–+——–+————–+—————————+ D2の数式: =TEXTJOIN(“,”,TRUE,A2:C2) → TRUEなので、空白のB2は無視される → 「りんご,ぶどう」(カンマが連続しない!) 【例3:メールアドレスをセミコロンで結合】 メールソフトで複数宛先を入力するとき便利! D2の数式: =TEXTJOIN(“;”,TRUE,A2:C2) → tanaka@example.com;sato@example.com;suzuki@example.com
🎯 TEXTJOINの4つの便利ポイント
  • 区切り文字を自動挿入してくれる
  • 空白セルを無視できる(TRUE指定時)
  • 範囲指定ができる(A2:C2のように一括指定)
  • &記号より数式が短くなる

🏢 5. 実務での活用例

📊 実務での活用シーン
📮 1. 宛名ラベルの作成
郵便番号 + 住所 + 氏名
〒100-0001
東京都千代田区1-1-1
田中太郎 様
=”〒”&A2&” “&B2&C2&D2&” “&E2&”様”
📄 2. ファイル名の自動生成
日付 + 部署 + 連番
2025-01-15_営業_001.pdf
=A2&”_”&B2&”_”&C2&”.pdf”
🔗 3. URLの自動生成
商品IDからURL生成
https://example.com/product/12345
=”https://example.com/product/”&A2

📝 実務での活用例(※横スクロールできます)

【例1:宛名ラベルの作成】 郵便番号+住所+氏名を1つにまとめる A列 B列 C列 D列 E列 F列 +——–+———-+———-+——–+——–+————————-+ 1 | 郵便番号| 都道府県 | 市区町村 | 番地 | 氏名 | 宛名 | +——–+———-+———-+——–+——–+————————-+ 2 |100-0001| 東京都 | 千代田区 | 1-1-1 | 田中太郎| 〒100-0001 東京都千代田区1-1-1 田中太郎様| +——–+———-+———-+——–+——–+————————-+ F2の数式: =”〒”&A2&” “&B2&C2&D2&” “&E2&”様” 【例2:ファイル名の自動生成】 A列 B列 C列 D列 +————+——–+——–+————————-+ 1 | 日付 | 部署 | 連番 | ファイル名 | +————+——–+——–+————————-+ 2 | 2025-01-15 | 営業 | 001 | 2025-01-15_営業_001.pdf | +————+——–+——–+————————-+ D2の数式: =A2&”_”&B2&”_”&C2&”.pdf” 【例3:URLの生成】 A列 B列 +————+—————————————-+ 1 | 商品ID | 商品ページURL | +————+—————————————-+ 2 | 12345 | https://example.com/product/12345 | +————+—————————————-+ B2の数式: =”https://example.com/product/”&A2

🔤 6. 文字列と数値・日付の結合

文字列と数値日付を結合するときは、少し注意が必要です。

日付の結合に要注意!

📊 日付・数値を結合する正しい方法
❌ 間違った方法(日付がおかしな数字になる)
A1(日付)
2025/1/15
45671の予定
(数字になってしまう!)
=A1 & "の予定"
✅ 正しい方法(TEXT関数を使う)
A1(日付)
2025/1/15
2025/1/15の予定
(正しく表示される!)
=TEXT(A1, “yyyy/m/d”) & “の予定”
⚠️ なぜ日付が数字になる?

Excelの内部では、日付は「シリアル値」という数字で管理されています(1900年1月1日を1として、1日ごとに+1)。そのまま結合すると、この数字が表示されてしまいます。

解決策:TEXT関数で「見た目の形式」を指定して文字列に変換する

📝 TEXT関数の使い方(※横スクロールできます)

【日付をTEXT関数で変換】 =TEXT(日付セル, “表示形式”) よく使う表示形式: ・”yyyy/m/d” → 2025/1/15 ・”yyyy年m月d日” → 2025年1月15日 ・”m月d日” → 1月15日 ・”yyyy-mm-dd” → 2025-01-15 【例:日付を含む文字列】 A1: 2025/1/15(日付) =TEXT(A1,”yyyy/m/d”)&”の予定” → 2025/1/15の予定 =TEXT(A1,”m月d日”)&”は休業日です” → 1月15日は休業日です 【金額をカンマ区切りで表示】 A1: 1000000(数値) =TEXT(A1,”#,##0″)&”円” → 1,000,000円 =TEXT(A1,”#,##0″)&”円(税込)” → 1,000,000円(税込)
🎯 TEXT関数の覚え方

TEXT(数値や日付, “表示形式”)で、数値や日付を「見た目通りの文字列」に変換できます。結合前に使うことで、きれいな表示になります。

⚠️ 7. よくあるエラーと注意点

⚠️ よくある間違いと正しい書き方
❌ エラー1:ダブルクォーテーションを忘れる
=A2 & & B2
→ エラー!スペースは “” で囲む必要があります
=A2 & " " & B2
✓ 正しい
❌ エラー2:全角と半角を間違える
=A2 & " " & B2
→ 全角スペース(スペースが広すぎる)
=A2 & " " & B2
✓ 半角スペース(正しい)
❌ エラー3:日付をそのまま結合
=A2 & "の予定"
→ 45671の予定(数字になる)
=TEXT(A2, "yyyy/m/d") & "の予定"
✓ TEXT関数で変換(正しい)
❌ エラー4:TEXTJOINで空白無視を忘れる
=TEXTJOIN(",", FALSE, A2:C2)
→ りんご,,ぶどう(カンマが連続)
=TEXTJOIN(",", TRUE, A2:C2)
✓ TRUEで空白を無視(正しい)
⚠️ 結果は「文字列」になることに注意

結合した結果は文字列になります。数値として計算に使いたい場合は、VALUE関数で変換が必要です。
例:=VALUE(A2&B2)(ただし、結合結果が数字だけの場合に限る)

📝 練習問題

練習 1
初級

姓と名をスペース付きで結合してください

📝 表(※横スクロールできます)

A列 B列 C列 1 姓 名 フルネーム 2 田中 太郎 ? 3 佐藤 花子 ?

解答:

C2に =A2&" "&B2 と入力

C2をC3にコピー

結果:

  • C2: 田中 太郎
  • C3: 佐藤 花子
練習 2
初級

CONCATENATE関数で都道府県と市区町村を結合してください

📝 表(※横スクロールできます)

A列 B列 C列 1 都道府県 市区町村 住所 2 東京都 渋谷区 ? 3 大阪府 大阪市 ?

解答:

C2に =CONCATENATE(A2,B2) と入力

C2をC3にコピー

結果:

  • C2: 東京都渋谷区
  • C3: 大阪府大阪市

別解: =A2&B2 でも同じ結果

練習 3
中級

カテゴリと番号をハイフンでつないで商品コードを作成してください

📝 表(※横スクロールできます)

A列 B列 C列 1 カテゴリ 番号 商品コード 2 A 001 ? 3 B 123 ?

解答:

C2に =A2&"-"&B2 と入力

C2をC3にコピー

結果:

  • C2: A-001
  • C3: B-123
練習 4
中級

TEXTJOIN関数で3つの商品名をカンマ区切りで結合してください

📝 表(※横スクロールできます)

A列 B列 C列 D列 1 商品1 商品2 商品3 商品リスト 2 りんご みかん ぶどう ? 3 鉛筆 消しゴム ノート ?

解答:

D2に =TEXTJOIN(",",TRUE,A2:C2) と入力

D2をD3にコピー

結果:

  • D2: りんご,みかん,ぶどう
  • D3: 鉛筆,消しゴム,ノート
練習 5
上級

郵便番号、都道府県、市区町村、番地を結合して完全な住所を作成してください

📝 表(※横スクロールできます)

A列 B列 C列 D列 E列 1 郵便番号 都道府県 市区町村 番地 完全住所 2 100-0001 東京都 千代田区 1-1-1 ? 3 530-0001 大阪府 大阪市 2-2-2 ?

形式: 〒郵便番号 都道府県市区町村番地

解答:

E2に ="〒"&A2&" "&B2&C2&D2 と入力

E2をE3にコピー

結果:

  • E2: 〒100-0001 東京都千代田区1-1-1
  • E3: 〒530-0001 大阪府大阪市2-2-2
練習 6
上級

金額に「円」を付けて、カンマ区切りで表示してください

📝 表(※横スクロールできます)

A列 B列 1 金額 表示 2 1000000 ? 3 500000 ?

TEXT関数を使って「1,000,000円」のように表示

解答:

B2に =TEXT(A2,"#,##0")&"円" と入力

B2をB3にコピー

結果:

  • B2: 1,000,000円
  • B3: 500,000円

📝 Step 22 のまとめ

✅ このステップで学んだこと

🔗 &記号
最も簡単な文字列結合方法。セルとセルを&でつなぐだけ
📋 CONCATENATE関数
正式な結合関数。&記号と機能は同じ
✨ TEXTJOIN関数
区切り文字を自動挿入する便利関数。空白セルも無視できる
🔤 TEXT関数
日付や数値を文字列に変換。結合時に必須
💡 重要なルール
固定の文字は””(ダブルクォーテーション)で囲む
🏢 実務活用
宛名ラベル、ファイル名生成、URL作成など多彩に活用
🎯 次のステップへ

文字列結合をマスターしました!次のStep 23では、LEFT/RIGHT/MID関数(文字列抽出)を学びます。逆に、長い文字列から必要な部分だけを取り出す関数です。結合と抽出をセットで覚えると、文字列操作が自由自在になります!

❓ よくある質問

Q1: &記号とCONCATENATE、どちらを使うべきですか?
普段は&記号で十分です。&記号の方が短くて簡単です。ただし、複雑な数式で見やすくしたい場合や、他の関数との組み合わせではCONCATENATEの方が分かりやすいこともあります。どちらを使っても結果は同じなので、好みで選んでOKです。
Q2: TEXTJOINが使えません。なぜですか?
TEXTJOIN関数はExcel 2019以降で使えます。古いバージョンのExcel(2016以前)では使えません。その場合は、&記号やCONCATENATE関数を使ってください。Googleスプレッドシートでは使えます。
Q3: 改行を入れて結合できますか?
はい、できます。改行コードを使います。=A2&CHAR(10)&B2で改行付き結合ができます。ただし、セルの書式設定で「折り返して全体を表示する」にチェックを入れる必要があります。
Q4: 結合した文字列を数値として計算に使えますか?
そのままでは使えません。結合した結果は文字列なので、計算には使えません。数値として使いたい場合は、VALUE関数で変換します。例:=VALUE(A2&B2)。ただし、結合した結果が数字だけの場合に限ります。
Q5: 空白セルを結合するとどうなりますか?
&記号では空白も含めて結合されます。例:A2が「田中」、B2が空白、C2が「太郎」の場合、=A2&B2&C2は「田中太郎」になります。TEXTJOINでTRUEを指定すると、区切り文字の重複を防げます。
Q6: 日付を結合すると数字になります。どうすればいいですか?
TEXT関数で日付を文字列に変換してください。例:=TEXT(A2,"yyyy/m/d")&"の予定"。Excelの内部では日付は数字で管理されているため、そのまま結合すると数字が表示されます。TEXT関数で見た目の形式を指定します。
Q7: たくさんのセルを一度に結合できますか?
TEXTJOIN関数なら範囲指定で一度に結合できます。例:=TEXTJOIN(",",TRUE,A2:Z2)でA列からZ列まで一気に結合。&記号では1つずつ指定する必要があるので、たくさんのセルを結合する場合はTEXTJOINが便利です。
📝

学習メモ

Excel・Googleスプレッドシート完全マスター - Step 22

📋 過去のメモ一覧
#artnasekai #学習メモ
LINE