1. PowerPoint や Word ならセルを分割できる! Excel なら 1 行足して結合しよう
セル分割は行えない? だれもが陥る Excel での資料作成の落とし穴とは
2023 年 1 月 20 日
Microsoft Excel を計算用途ではなく簡易的なエディターとして利用していると、思いがけないところで手が止まってしまうことがあります。その代表的な例の 1 つが、セルの分割です。
表計算ソフトである Excel ではセルを分割できませんが、結合を駆使して分割したように見せたり、Microsoft PowerPoint や Microsoft Word でセルを分割したりできます。
また、セル自体の分割ではなく、セルに入った内容を分割したい場合もあります。こちらは Excel で対応が可能です。セル内のデータを、区切り文字やデータの長さを指定して分割したり、関数を使って分割したりできます。
今回は、セル自体を分割する方法と、セル内のデータを分割する方法をそれぞれ紹介します。
- PowerPoint や Word ならセルを分割できる! Excel なら 1 行足して結合しよう
1-1. PowerPoint や Word に表をコピー & ペーストしセル分割
1-2. Excel で行列を追加しセルの結合で分割したように見せる
- セル内のデータを分割する
2-1. 区切り文字を基にセル分割してみよう
2-2. 区切る位置を指定してセル分割してみよう
2-3. 関数を用いてセル分割してみよう
- まとめ
Excel は使い勝手の良さから簡易的なエディターとして利用されることもありますが、本来表計算ツールですのでセルの分割はできません。
たとえば、下図のように 4 マス× 4 マスの表があり、一番右下の箇所だけさらに細分化したいような場合です。
なぜ Excel でセルを分割できないのかというと、表計算を行う際、セル番地の指定が基本になるためです。
上図のように D4 セルを 4 分割できてしまうと、4 つのセルのうちどこのデータを参照すればよいのか分からなくなってしまうため、Excel ではセルの結合はできてもセルの分割はできません。
セルを分割したい場合の対処方法としては下記の 2 つが考えられます。
- PowerPoint や Word に表をコピー & ペーストする
PowerPoint や Word であれば、表の機能で「セルの分割」というメニューがあらかじめ用意されているため、分割する列数や行数を指定するだけで簡単にセルを分割できます。
Excel で作成した表を一時的に PowerPoint や Word にコピー & ペーストしセルを分割、そして再びコピー & ペーストで Excel に貼り付けるという方法がスムーズでおすすめです。
- 行列を増やし、分割したくないセルを結合する
PowerPoint や Word を介さず Excel で完結させたいときは、行または列を挿入して分割しないセルを結合することで、分割したように見せる方法を使います。
ただし PowerPoint や Word でセル分割を行うより手数が必要です。
1-1. PowerPoint や Word に表をコピー & ペーストしセル分割
PowerPoint や Word で分割するには、表の機能で「セルの分割」を利用します。PowerPoint でも Word でも方法は同じです。
Excel の表を PowerPoint や Word にコピー & ペーストして、セルの分割を行ってみましょう。
1. Excel で作成した表を選択、右クリックまたは [Ctrl] + [C] でコピー
2. PowerPoint のファイルに右クリックし貼り付け、または [Ctrl] + [V] で貼り付け (例では貼り付け形式に「元の書式を保持」を選択)
3. 分割するセルをクリック (例では右下のセル)
4. 右クリックし、「セルの分割」をクリック
5. セルを左右に分割するには列数を、セルを上下に分割するには行数を設定し、「OK」をクリック (例では列数 2、行数 1 を入力し縦に 2 つに分割)
6. セルが分割される
あとは表全体をコピーして、元の Excel にペーストすれば完了です。
1-2. Excel で行列を追加しセルの結合で分割したように見せる
Excel でセルの分割を行いたいときは、行または列を挿入して、分割しないセルを結合します。以下の例では、D 列を挿入し、D 列と E 列を結合後、D 列と E 列のセルの幅を設定しています。やり方の詳細は以下のとおりです。
1. 表の分割したいセルを選択
2. 右クリックし、「挿入」をクリック
3. 左右に分割したいので「列全体」を選択し、「OK」をクリック(上下に分割したい場合は「行全体」を選択します。)
4. 列が追加されるので、分割しないセルを選択(例では1行目から3行目)
5. ホーム タブから、「配置」をクリック、「セルを結合して中央揃え」の横の矢印をクリックし、「横方向に結合」をクリック
6. セルが結合される
7. 列の幅を揃えるために、結合した列を選択し、右クリックから「列の幅」をクリック
8. 基準となる列の幅の半分の幅を設定し、「OK」をクリック (例では ABC 各列の幅が 8.38 のため、4.19 を設定)
9. 表が完成
2. セル内のデータを分割する
セル自体の分割ではなく、セルの中に入ったデータを分割したいこともあります。
代表的な例としては、住所のデータを都道府県とそれ以降に分割したいときや、氏名を名字と名前に分割したいときなどが挙げられます。
このような場合、セル内のデータを分割する方法は 3 つあります。
- セルに入っているデータの区切り文字を基に分割する方法
- 区切る位置を指定する方法
- 関数を利用して分割する方法
区切り文字と区切り位置の指定は、区切り位置指定ウィザードを使用して指定できるため、簡単です。
しかし区切り文字の方は、そもそもデータの中の区切りたい位置に区切り文字が入っている必要があります。一方の区切り位置は、特定の文字が入っていなくても使用できますが、データの長さを指定して区切ることになるため、区切りたい位置までの長さが一律である必要があります。
上記の条件を満たさない場合は、関数を利用した分割をおすすめします。式も複雑になってきますが、複数の特定の文字より左、特定の文字の 3 回目より右、などといった複雑なデータの抽出が可能です。
上記 3 つの方法についてそれぞれ詳しく見ていきましょう。
2-1. 区切り文字を基にセル分割してみよう
データ内で区切りたい位置に特定の文字が入っている場合、区切り文字を指定する方法が最も簡単です。
区切り文字には以下の選択肢があります。
- タブ
- セミコロン (;)
- コンマ (,)
- スペース ( )
- その他 (自由に 1 文字指定できます)
通常はタブやセミコロン、コンマ、スペースを区切り文字として指定します。
たとえば顧客管理システムから取得した CSV データの住所を分割したい場合など、セル内のコンマ区切りのデータを、区切り文字指定ウィザードで都道府県や市区町村、それ以降に分割できます。
ここでは、コンマ区切りの住所データを例に分割していきます。
【区切り位置指定ウィザードで区切り文字を使ったデータ分割】
1. 分割するデータのセルを選択
2. データ タブから「データツール」を選択し「区切り位置」をクリック
3. データのファイル形式で、「コンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」を選択し、「次へ」をクリック
4. 区切り文字を選択し、「次へ」をクリック(例ではコンマを選択)
※元の CSV データを残す必要がない場合は、「完了」を押すとウィザードは終了し、A ~ C 列までプレビューどおりに分割されます。
5. 表示先の矢印をクリック
6. 分割データを表示する範囲を選択し、区切り位置指定ウィザードの矢印をクリック
7. 「完了」ボタンをクリック
※確認画面が表示されたら、「OK」をクリック
8. データが区切られて表示される
区切り文字を使ったデータの分割ができました。
また、コンマのような特定の記号だけでなく、「その他」を選択すると、特定の 1 文字を区切り文字として自由に指定可能です。ただし、指定した文字は区切り文字として扱われるため、表記から消えてしまう点に注意が必要です。
下図では区切り文字に「区」を指定しているため、「区」が入っていた位置でデータが区切られますが、黄色ハイライトの位置から「区」の文字が消えてしまいます。
また、区切り文字は 1 つではなく、複数選択可能です。たとえば、タブとコンマの両方の位置で区切ることもできます。
2-2. 区切る位置を指定してセル分割してみよう
セルに入ったデータの区切りたい位置までの長さが同じ場合、区切る位置を指定してデータを分割できます。
この例では、住所データから都道府県とそれ以降にデータを分割していきます。
【区切り位置指定ウィザードで区切る位置を指定したデータ分割】
1. 分割するデータのセルを選択
2. データ タブから「データツール」を選択し「区切り位置」をクリック
3. データのファイル形式で、「スペースによって右または左に揃えられた固定長フィールドのデータ」を選択し、「次へ」をクリック
4. 区切る位置をデータのプレビュー上でクリックし、「次へ」をクリック
5. 表示先の矢印をクリック
6. 分割データを表示する範囲を選択し、区切り位置指定ウィザードの矢印をクリック
7. 「完了」ボタンをクリック
※確認画面が表示されたら、「OK」をクリック
8. データが区切られて表示される
このデータの分割は、見た目のデータの長さで行われるわけではなく、セル内のデータの長さで行われることに注意が必要です。
改行を含んだセルを分割した場合は、改行を 1 文字とカウントした文字数での分割となります。
以下の例では、「東京都」と「世田谷区経堂」の間に改行が入ったデータを分割しています。結果、4 文字目に該当する改行がそれ以降のセルの 1 文字目に含まれています。
2-3. 関数を用いてセル分割してみよう
区切り文字が入っていなかったり、区切りたい位置までのデータの長さにばらつきがあったりする場合は、関数を使ってセル内のデータを分割します。
関数によるセル分割では、特定の文字と文字数で分割するといった方法があります。こういった分割は主に住所などの分割に有効です。
たとえば都道府県の文字を基に、市区町村と分割するようなイメージです。
区切り文字の場合は「都道府県のうちのいずれか」といったような指定の仕方ができませんし、区切り位置の場合は都道府県名が 3 文字だけの場合には有効ですが、3 文字と 4 文字の都道府県名が入り混じる場合には使えません。
そのため、「都道府県」で分割する関数を作成します。
都道府県を抽出する際は、FIND 関数、LEFT 関数、IFERROR 関数を組み合わせます。それ以降を抽出する際は、FIND 関数と IFERROR 関数、LEN 関数、RIGHT 関数を組み合わせてデータを分割します。
- FIND 関数: 指定された文字列を他の文字列の中で検索し、その文字列が最初に現れる位置を左端から数え、その番号を返す
- LEFT 関数: 文字列の左側から指定した文字数を取り出す
- IFERROR 関数: 数式がエラーの場合に指定した値を返す
- RIGHT 関数: 文字列の右側から指定した文字数を取り出す
- LEN 関数: 文字列を参照し、文字数を返す
【都道府県のデータ分割】
以下の例では、都道府県を抽出するために、FIND 関数で住所のデータの都道府県の文字列が最初に現れる番号をカウントし、LEFT 関数でカウントした文字数を抽出しています。
A2 の「東京都豊島区西池袋」と表示しているセルに対して、B2 のセルには「=LEFT(A2,IFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0)))))」の式を入力しています。
ここでは式を分解して解説しましょう。
まず FIND 関数で「都」の左端からの位置を取得します。FIND 関数の引数は「検索文字列, 対象, 開始位置」で、開始位置は省略可能です。この場合、A2 のセルの「都」の位置が 3 文字目のため、「3」が返ります。
また、「都」が含まれないセルを参照している場合、エラー (#VALUE! 表示) になっています。
そこで、都がない場合に、道府県の位置を取得するために、IFERROR 関数を使います。IFERROR 関数の引数は「エラーかどうかをチェックする値, エラーの場合の値」です。
IFERROR関数で都がない場合に道があるか、道がない場合に府があるか、府がない場合に県があるかを入れ子にしてチェックすることで、都道府県の位置をそれぞれ抽出できます。
例では D2 のセルに「=IFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0))))」を入力し、都道府県の位置を取得し、どれにも当てはまらない場合は 0 を返すようにしています。
そして、LEFT 関数で都道府県の値を抽出します。LEFT 関数は、文字列の先頭から指定された文字数のデータを返します。LEFT 関数の引数は「取り出す文字を含む文字列, 取り出す文字数」です。
例では、「=LEFT(A2,D2)」の式で「東京都豊島区西池袋」の 3 文字目までの文字列を抽出するので、「東京都」が返ります。
1 つの式「=LEFT(A2,IFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0)))))」にまとめて B2 のセル内に入力し、住所のデータ全体に適用すると、FIND 関数と IFERROR 関数、LEFT 関数を組み合わせて、都道府県の抽出ができました。
【それ以降のデータ分割】
さらに、それ以降の文字列を抽出します。
LEN 関数で全体の文字数をカウントし、FIND 関数で住所のデータの都道府県の文字列が最初に現れる番号を引いて、RIGHT 関数で右から都道府県の文字数を除いた文字数を抽出します。
例では、A2 の「東京都豊島区西池袋」と表示しているセルに対して、「=RIGHT(A2,LEN(A2)-IFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0)))))」の式を入力しています。
式を分解して解説しましょう。
都道府県の抽出方法と同様に、FIND 関数で「都道府県」の左端からの位置を取得します。次に、LEN 関数で全体の文字数を取得します。LEN 関数は文字列の文字数を返す関数で、引数は「文字数をカウントするセル」です。
例では、「=LEN(A2)」で「東京都豊島区西池袋」の文字数をカウントするので、「9」が返ります。
そして、RIGHT 関数で全体の文字数から都道府県の文字数を引いた文字数を抽出します。RIGHT 関数は LEFT 関数と逆で、文字列の末尾から指定された文字数のデータを返します。RIGHT 関数の引数は「取り出す文字を含む文字列, 取り出す文字数」です。
例では、「=RIGHT(A2,D2-C2)」の式で「東京都豊島区西池袋」の全体の文字数 9 文字から都道府県の位置が 3 文字を引いて、右から 6 文字目までの文字列を抽出して、「豊島区西池袋」が返ります。
1 つの式「=RIGHT(A2,LEN(A2)-IFERROR(FIND("都",A2),IFERROR(FIND("道",A2),IFERROR(FIND("府",A2),IFERROR(FIND("県",A2),0)))))」にまとめて C2 のセルに入力し、住所のデータ全体に適用すると、FIND 関数と IFERROR 関数、LEN 関数、RIGHT 関数を組み合わせて、都道府県以降の抽出ができました。
この例では「都道府県」を軸に左右にデータをセル分割しましたが、同様に「市区町村」でも分割可能です。
3. まとめ
セルの分割でセル自体を分割する際、デザイン重視の場合は PowerPoint、Word を利用する方法がおすすめです。Excel を使いたい場合、PowerPoint や Word を経由して貼り付けるか、Excel だけで完結させたい場合は行列を追加し結合することで対応できます。
また、セルの中に入ったデータを分割したい場合は、ウィザードや関数を利用した分割方法があるので、状況に応じて使い分けてみてください。
今回紹介した分割方法を覚えて、セルを自在に操れるようになりましょう。
【参考】関連する記事
リモートワーク・ハイブリッドワークに適した環境設置のために
リモートワーク・テレワーク・在宅勤務環境を安全・快適に実現するためには、「セキュリティの確保」「Web 会議のためのデバイス選択」「グループワークのためのアプリケーション」など検討する課題も多く、またこれらを潤沢な資金で準備するのではなくコスト削減につなげることが大切です。
これらの達成のための Microsoft 365、Excel の使い方や、リモートワーク・ハイブリッドワーク環境を充実させるために以下の記事が参考になります。
- Microsoft 365・Excel: Microsoft 365 から、Excel の使い方など生産性を向上させるコラム
- Teams・Web 会議: Microsoft Teams を始め、Web 会議をワンランクアップさせるコラム
- リモートワーク・テレワーク: リモートワークやテレワークなど、新しい働き方のお役立ちコラム
他にも Excel 作業を高速化するテクニックを厳選! 無料ガイドブック
Excel ショートカット 30 選
Microsoft 公式の超時短仕事術 Excel ショートカット 30 選です。
もっと PC スキルを学びたい、より効率的に業務を行いたいという方におすすめです。
ご購入検討の問い合わせ先
Web フォームで購入相談
本情報の内容 (添付文書、リンク先などを含む) は、作成日時点でのものであり、予告なく変更される場合があります。