エクセルで2つのセルの内容を1つにする方法をお探しですね。
広告
エクセルで複数のセルや文字を1つに結合・分割する方法を徹底解説
エクセルで顧客リストや売上データを整理していると、「姓と名が別々のセルに入っているから1つにまとめたいな」とか「逆に、1つのセルにまとまっている住所を都道府県と市区町村に分けたい」という場面、ありますよね。
手作業でコピー&ペーストを繰り返すのは時間もかかるし、入力ミスも起きやすくて大変です。
この記事では、エクセルで複数のセルや文字を1つに結合したり、逆に分割したりする具体的な方法を、最新の関数と便利な標準機能の両方から詳しく解説します。
用途に合わせた最適なやり方を知っておけば、面倒なデータ整理の作業が一瞬で終わるようになりますよ。
エクセルで複数のセルを1つに「結合」する便利な関数と機能
エクセルで複数のセルの文字を1つにまとめる場合、昔からよく使われているのが「&(アンパサンド)」記号やCONCATENATE関数です。
ただ、これらの方法だと結合したいセルを1つずつ指定しないといけないので、データ量が多かったり、間に「カンマ」や「スペース」を入れたい場合は数式がすごく長くなってしまうんです。
そこで今、実務で圧倒的におすすめなのが「TEXTJOIN(テキストジョイン)関数」です。
TEXTJOIN関数は、Excel 2016以降で使えるようになった比較的新しい関数で、複数のセルをまとめて指定できて、間に好きな区切り文字を入れながら結合できます。
さらに便利なのが、指定した範囲に空白のセルがあっても、その空白を自動的に無視して結合してくれるオプションがあること。
データにばらつきがあるリストの整理にとても便利なんです。
たとえば、都道府県、市区町村、番地が別々のセルに入っている住所データを結合する時、TEXTJOIN関数を使えば、間にスペースを入れつつ、番地が空白のデータがあっても変なスペースが連続することなく、きれいな住所録が作れます。
**TEXTJOIN関数の基本の書き方**
“`
=TEXTJOIN(区切り文字, 空白を無視するかどうか, 結合するテキストやセル範囲)
“`
このように、昔の方法では手間がかかっていた文字列の結合も、TEXTJOIN関数を使えばシンプルでミスの少ない数式で実現できます。
IF関数と組み合わせて「特定の条件を満たすデータだけを結合する」なんていう応用もできるので、エクセルを使う仕事をしている人にとって必須のスキルと言えますね。
エクセルで1つのセルの文字を複数に「分割」する最新関数
結合とは逆に、1つのセルにまとまっているデータを複数のセルに分けたい場面も多いですよね。
たとえば、システムから出力したCSVデータがカンマ区切りで1つのセルに入ってしまっている場合や、氏名を姓と名に分けたい時などです。
これまで、エクセルで文字列を分割する時は、上のメニューの「データ」タブにある「区切り位置」機能を使うのが一般的でした。
でもこの機能、元のデータを直接上書きしてしまううえに、データが追加されたり更新されたりした時には、また同じ作業を手作業でやり直さないといけないんです。
こうした手作業の面倒くささを解消してくれるのが、Microsoft 365とExcel 2021以降で使えるようになった「TEXTSPLIT(テキストスプリット)関数」です。
この関数は、指定した区切り文字(カンマやスペース、ハイフンなど)を基準にして、1つのセルのテキストを自動的に複数のセルに分割してくれます。
関数を使うので、元のデータはそのまま残ります。
しかも、元データが変更されれば分割結果もリアルタイムで自動更新されるという大きなメリットがあります。
TEXTSPLIT関数は、エクセルの最新機能である「スピル」という仕組みを利用しています。
スピルっていうのは、1つのセルに数式を入力するだけで、結果が隣のセルに自動的に展開される機能のこと。
だから、分割先のセルにわざわざ数式をコピー&ペーストする必要がないんです。
**TEXTSPLIT関数の基本の書き方**
“`
=TEXTSPLIT(分割したいテキスト, 列の区切り文字, [行の区切り文字])
“`
この関数は横方向への分割だけじゃなく、改行コードなどを指定して縦方向(行方向)に分割することもできます。
ウェブサイトのデータやシステムから出力したデータを扱う時、不要な文字が混ざっている場合は、SUBSTITUTE関数で事前に不要な文字を削除してからTEXTSPLIT関数で分割する、といった合わせ技もすごく効果的ですよ。
関数不要!「フラッシュフィル」で直感的に結合・分割する方法
関数を使って正確に処理を自動化するのは素晴らしいんですが、「関数の書き方を覚えるのが苦手」「1回限りの作業だからもっと簡単に終わらせたい」という人には、「フラッシュフィル」という標準機能がおすすめです。
フラッシュフィルは、あなたが手入力したデータの「パターン」をエクセルが自動的に読み取って、残りのセルにも同じパターンでデータを一気に入力してくれる、まるで魔法のような機能なんです。
たとえば、A列に「山田 太郎」というように姓と名がスペースで区切られて入っているとします。
B列に「山田」とだけ手入力して、その下のセルを選択した状態でフラッシュフィルを実行するだけで、A列の残りのデータからも「姓」の部分だけが自動的に抽出されて、B列に一気に入力されます。
同じように、C列に「太郎」と入力して実行すれば「名」だけを分割して取り出せます。
この機能は分割だけじゃなく、結合やデータ形式の変換にも使えます。
**フラッシュフィルの使い方**
1. パターンを示す見本データを1つ(または2つ)手入力する
2. そのすぐ下のセルを選択する
3. キーボードの「Ctrl」キーを押しながら「E」キーを押す
ショートカットキーを使わなくても、「データ」タブの中にあるフラッシュフィルのボタンをクリックしても実行できます。
電話番号にハイフンを追加したり、逆にハイフンを削除して数字だけにしたりする作業も、フラッシュフィルを使えば一瞬で終わります。
ただし、元のデータに一定のパターンがない場合(スペースが全角と半角で混ざっている、特定の行だけフォーマットが違うなど)は、エクセルがパターンを正しく認識できず、思った通りの結果にならないことがあります。
なので、フラッシュフィルを使った後は、データが正しく処理されているか簡単に確認することが大切です。
業務効率を最大化する「結合・分割」の使い分けと応用テクニック
ここまで、エクセルでデータを結合・分割するための関数(TEXTJOIN、TEXTSPLIT)と機能(フラッシュフィル)を紹介してきましたが、実務で一番大事なのは「どの場面でどっちを使うべきか」という使い分けの判断です。
それぞれの特徴を理解して、仕事の目的に合わせて最適な方法を選ぶことで、作業効率は劇的に上がります。
まず、継続的にデータが更新される表や、他の人と共有するフォーマットを作る場合は、「関数(TEXTJOINやTEXTSPLIT)」を使うのが鉄則です。
関数で処理を組んでおけば、元のデータが変更されたり新しい行が追加されたりした瞬間に、結合や分割の結果も自動的に再計算されます。
これによって、毎月のレポート作成や定期的なデータ取り込み作業で、手作業による再処理の手間を完全になくすことができます。
一方、一度きりのデータ整理や、顧客リストの簡単な表記揺れ修正など、その場限りの素早い処理が必要な場面では「フラッシュフィル」が圧倒的に便利です。
複雑な数式を考える時間すら不要で、見本を少し入力するだけで直感的にデータを整えられるので、すぐに結果が欲しい時の業務改善につながります。
ただし、フラッシュフィルはあくまでその時点での「値のコピー」なので、元データが後から変更されても結果は連動しない点には注意が必要です。
**実務で役立つ判断基準**
– **テンプレート化・自動更新が必要な業務**
→ TEXTJOIN関数、TEXTSPLIT関数を使う
– **1回限りのデータ整形・直感的な操作**
→ フラッシュフィル(Ctrl + E)を使う
– **数値として扱いたい分割データ**
→ TEXTSPLIT関数の結果にVALUE関数を組み合わせて数値として認識させる
このように、エクセルが提供する最新の関数と直感的な標準機能の両方をマスターして、状況に応じて柔軟に使い分けることが、データ処理のプロへの第一歩です。
日々の仕事で発生する「結合・分割」の作業を効率化して、もっと付加価値の高い分析や企画の仕事に時間を使えるよう、ぜひ今回紹介したテクニックを明日からの実務に取り入れてみてください。
広告
