文字列の結合と抽出を自在に操るCONCATENATE・TEXTJOIN・LEFT・RIGHT・MID関数
文字列の結合と抽出を自在に操るCONCATENATE・TEXTJOIN・LEFT・RIGHT・MID関数
顧客名簿から姓名を結合したり、商品コードから特定の部分を抽出したり、文字列データの加工は実務でよく発生しますよね。手作業で一つ一つ処理するのは時間がかかって大変です。
今回は文字列結合のCONCATENATE・TEXTJOIN関数と文字列抽出のLEFT・RIGHT・MID関数をご紹介します。これらをマスターすれば、文字列データの処理が格段に効率化されます!
Contents
1. 文字列結合・抽出関数の基本構文
CONCATENATE関数(文字列結合)
=CONCATENATE(テキスト1, テキスト2, テキスト3, ...)
=CONCATENATE(テキスト1, テキスト2, テキスト3, ...)
TEXTJOIN関数(区切り文字付き結合)
=TEXTJOIN(区切り文字, 空白を無視, テキスト1, テキスト2, ...)
=TEXTJOIN(区切り文字, 空白を無視, テキスト1, テキスト2, ...)
LEFT関数(左から文字抽出)
=LEFT(テキスト, 文字数)
=LEFT(テキスト, 文字数)
RIGHT関数(右から文字抽出)
=RIGHT(テキスト, 文字数)
=RIGHT(テキスト, 文字数)
MID関数(指定位置から文字抽出)
=MID(テキスト, 開始位置, 文字数)
=MID(テキスト, 開始位置, 文字数)
2. CONCATENATE関数で文字列を結合する
顧客データを使って、姓名の結合を実践してみましょう。
A | B | C | D |
---|---|---|---|
1 | 姓 | 名 | フルネーム |
2 | 田中 | 太郎 | =CONCATENATE(B2," ",C2) |
3 | 佐藤 | 花子 | =CONCATENATE(B3," ",C3) |
4 | 鈴木 | 一郎 | =CONCATENATE(B4," ",C4) |
結果:「田中 太郎」「佐藤 花子」「鈴木 一郎」
💡 ポイント:CONCATENATE関数では、文字列の間にスペースや記号を入れたい場合は、
" "
のように別の引数として指定します。
3. TEXTJOIN関数でより柔軟な文字列結合
複数の項目を区切り文字で結合したい場合に便利なTEXTJOIN関数を見てみましょう。
A | B | C | D | E |
---|---|---|---|---|
1 | 商品名 | 色 | サイズ | 商品詳細 |
2 | Tシャツ | 青 | M | =TEXTJOIN("-",TRUE,B2,C2,D2) |
3 | パンツ | L | =TEXTJOIN("-",TRUE,B3,C3,D3) |
結果:
2行目:「Tシャツ-青-M」
3行目:「パンツ-L」(空白セルは自動的に無視される)
2行目:「Tシャツ-青-M」
3行目:「パンツ-L」(空白セルは自動的に無視される)
TEXTJOIN関数の第2引数をTRUE
にすることで、空白セルを自動的に無視して結合できます。
4. LEFT・RIGHT関数で文字列の両端から抽出
商品コードから特定の情報を抽出する例を見てみましょう。
A | B | C | D |
---|---|---|---|
1 | 商品コード | カテゴリ(左3文字) | 連番(右4文字) |
2 | ABC-2024-0001 | =LEFT(B2,3) | =RIGHT(B2,4) |
3 | XYZ-2024-0152 | =LEFT(B3,3) | =RIGHT(B3,4) |
ABC-2024-0001
→
LEFT: ABC
RIGHT: 0001
RIGHT: 0001
5. MID関数で文字列の中間部分を抽出
文字列の特定の位置から指定した文字数を抽出するMID関数の使い方です。
A | B | C |
---|---|---|
1 | 商品コード | 製造年(5文字目から4文字) |
2 | ABC-2024-0001 | =MID(B2,5,4) |
3 | XYZ-2023-0152 | =MID(B3,5,4) |
ABC-2024-0001
→
MID(5,4): 2024
重要:MID関数の開始位置は1から始まります。「ABC-2024-0001」で年を抽出する場合、「A=1, B=2, C=3, -=4, 2=5」となるため、開始位置は5になります。
6. 実践的な組み合わせテクニックと応用例
メールアドレスの生成
姓名からメールアドレスを自動生成する例:
=CONCATENATE(LEFT(B2,1),C2,"@company.com")
田中太郎 → t太郎@company.com
住所の分割と結合
郵便番号付き住所から都道府県を抽出:
住所 | 都道府県抽出 |
---|---|
〒100-0001 東京都千代田区千代田1-1 | =MID(A2,11,3) |
〒530-0001 大阪府大阪市北区梅田1-1 | =MID(A3,11,3) |
複数関数の組み合わせ
商品コードから情報を抽出して新しい形式で結合:
=CONCATENATE("【",LEFT(B2,3),"】",RIGHT(B2,4),"_",MID(B2,5,4))
ABC-2024-0001 → 【ABC】0001_2024
💡 効率化のコツ:
- 絶対参照($)を使って数式をコピー可能にする
- LEN関数と組み合わせて動的な文字数指定を行う
- FIND関数で区切り文字の位置を特定して柔軟な抽出を行う
関数 | 用途 | 活用例 |
---|---|---|
CONCATENATE | 基本的な文字列結合 | 姓名結合、住所結合 |
TEXTJOIN | 区切り文字付き結合 | 商品属性結合、タグ結合 |
LEFT | 左端からの抽出 | カテゴリコード、名字抽出 |
RIGHT | 右端からの抽出 | 連番、拡張子抽出 |
MID | 中間部分の抽出 | 製造年月、都道府県抽出 |
📋 まとめ
- 文字列結合・抽出関数の使い所
- データの整理・加工・分析時の文字列処理
- レポート作成時の表示形式統一
- システム間でのデータ形式変換
- 基本構文
- =CONCATENATE(テキスト1, テキスト2, ...)
- =TEXTJOIN(区切り文字, 空白を無視, テキスト1, ...)
- =LEFT(テキスト, 文字数) / =RIGHT(テキスト, 文字数)
- =MID(テキスト, 開始位置, 文字数)
- 実用例
- CONCATENATE(B2," ",C2) → 姓名結合
- TEXTJOIN("-",TRUE,B2,C2,D2) → 属性結合
- LEFT(B2,3) → 商品カテゴリ抽出
- MID(B2,5,4) → 製造年抽出
- 活用のポイント
- 文字の位置は1から始まることを忘れずに
- 空白セルの処理にはTEXTJOINが便利
- 複数の関数を組み合わせて複雑な処理も可能
文字列操作関数をマスターすることで、データの整理・加工作業が飛躍的に効率化されます。手作業では時間のかかる文字列処理も、これらの関数を使えば一瞬で完了できます。ぜひ実際のデータで練習して、文字列操作のプロを目指しましょう!