【Excel】エクセルで1つのセルを横・縦に分割する方法(複数のセル・複数列にデータを分ける)
エクセルで作表していると、1つのセルを横や縦に分割し、見出しや入力欄を細かく整えたい場面があります。
ただし、Excelには結合済みではない単一セルそのものを途中で分割する機能はありません。
そのため、目的に応じて列や行を追加する、結合セルを解除する、文字列を複数列へ分ける、罫線で分割したように見せる、といった方法を使い分ける必要があります。
セルを横方向に分けたい場合は列を追加します。
セルを縦方向に分けたい場合は行を追加します。
1セルに入った文字を複数セルへ分けたい場合は区切り位置または関数を使います。
この記事では、表のレイアウトを崩さずにセルを分割したように扱う方法と、複数列へデータを展開する方法を詳しく解説します。
エクセルでセルを横・縦に分ける基本操作
それではまず、エクセルで1つのセルを横または縦に分けるための基本操作について解説していきます。
| A | B | C |
|---|---|---|
| 商品名 | 数量 | 単価 |
| りんご | 10 | 120 |
Excelのワークシートは、列と行が交差したマス目で構成されています。
したがって、分割したいセルの位置に新しい列または新しい行を挿入することが、実務上もっとも自然な方法です。
横方向に分けるための列の挿入
セルを左右に分けたいときは、分割したい位置の右側に列を追加します。
たとえばA列の「氏名」を姓と名の2つにしたい場合は、A列とB列の間に新しい列を挿入します。
列見出しのBを右クリックし、表示されたメニューから挿入を選択してください。
するとB列が新設され、元のB列以降は右へ移動します。
この操作により、A列に姓、B列に名を入力できる状態になります。
表の途中で列を増やす場合でも、同じ列にある既存のデータはまとめて移動するため、行ごとに手作業でセルをずらす必要はありません。
【操作のポイント】列を追加する前に、右へ移動する列に数式や参照が含まれているかを確認しましょう。
縦方向に分けるための行の挿入
セルを上下に分けたいときは、分割したい位置の下側に行を挿入します。
たとえば1行目の見出しの下に補足見出しを追加したいときは、2行目を選択して行を挿入します。
左端の行番号2を右クリックし、挿入をクリックすると、新しい2行目が作成されます。
元の2行目以降は下へ移動するため、表の並びを保ったまま入力欄を増やせます。
複数行を選択してから挿入すると、選択した行数と同じ数の空白行を追加できます。
明細行を一度に増やしたいときにも便利な操作です。
行を追加するときは、数式の合計範囲が自動で広がるかどうかも確認してください。
【操作のポイント】行番号をクリックしてから操作すると、行全体を確実に選択できます。
結合セルを解除して分ける手順
見た目は1つのセルでも、実際には複数セルを結合している場合があります。
この場合は、結合を解除することで元の複数セルに戻せます。
対象の結合セルを選択し、ホームタブの配置グループにある結合して中央揃えの▼をクリックします。
メニューからセルの結合を解除を選択しましょう。
結合が解除されると、左上セルにあった値だけが残り、ほかのセルは空白になります。
そのため、解除前に必要な文字列を控えることが大切です。
【操作のポイント】結合セルの解除は分割ではなく、結合前のセル構成へ戻す操作です。
複数列へデータを分ける区切り位置の操作
続いては、1つのセルに入力された文字列を複数のセルや複数列に分ける区切り位置の操作を確認していきます。
| A列の元データ | 分割後B列 | 分割後C列 |
|---|---|---|
| 東京都,新宿区 | 東京都 | 新宿区 |
| 大阪府,大阪市 | 大阪府 | 大阪市 |
区切り位置は、カンマ、空白、タブなどの記号を目印にして、文字列を別々の列へ展開する機能です。
住所、氏名、商品コード、CSV形式のデータを整理するときに役立ちます。
区切り文字による文字列の分割
カンマで区切られたデータを分ける場合は、まず元データが入力されたセル範囲を選択します。
データタブを開き、データツールグループから区切り位置を選択してください。
ウィザードが表示されたら、区切り文字によってフィールドを区切るを選択して次へ進みます。
区切り文字の一覧でカンマにチェックを入れると、プレビュー欄に分割位置が縦線で表示されます。
問題がなければ完了をクリックしましょう。
分割先の右側にデータがあると上書きされる可能性があります。
事前に空白列を用意するか、分割先を指定して安全に実行することが重要です。
【操作のポイント】区切り文字は、元データに実際に使われている記号と一致させます。
固定幅による文字列の分割
文字数が常に同じ形式のコードは、固定幅で分ける方法が向いています。
たとえば商品コードの先頭3文字が分類、残り5文字が番号という形式なら、文字位置で分割できます。
区切り位置の最初の画面で、固定長フィールドを選択します。
次の画面のプレビューでは、任意の位置をクリックして改行線のような区切りを入れられます。
誤って置いた線はダブルクリックすると削除できます。
文字数が不規則なデータに固定幅を使うと、意図しない場所で切れることがあります。
元データの桁数が統一されているかを確認してから使いましょう。
【操作のポイント】固定幅は社員番号や伝票番号など、桁数が決まったデータに適しています。
分割先セルの指定と上書き防止
区切り位置の最後の画面では、分割先を指定できます。
既定では選択範囲の先頭セルから右方向へ展開されますが、分割先の入力欄を使えば別の列にも出力できます。
たとえばA2からF2へ分割結果を出したい場合は、分割先にF2を指定します。
元データを残したい場合は、元の列とは別の空白領域を分割先にする方法が安心です。
区切り位置は基本的に元データを置き換えます。
元の文字列も必要なときは、先に列をコピーして複製を作成しておきましょう。
【操作のポイント】完了前のプレビューで列数を確認し、必要な空白列を確保します。
TEXTSPLIT関数による複数セルへの展開
続いては、関数を使って1つのセルの文字列を複数列または複数行に分割する方法を確認していきます。
| A | B | C | D |
|---|---|---|---|
| 氏名 | 姓 | 名 | 部署 |
| 山田 太郎 営業部 | 山田 | 太郎 | 営業部 |
TEXTSPLIT関数はMicrosoft 365などで使える動的配列関数です。
1つの数式を入力するだけで、結果を右や下の複数セルへ自動展開できる点が大きな特徴です。
列方向に分けるTEXTSPLIT関数
空白で区切られたA2の文字列を横方向へ分ける場合は、B2に次の数式を入力します。
=TEXTSPLIT(A2,” “)
A2に山田 太郎 営業部と入力されていれば、B2からD2に山田、太郎、営業部が自動で表示されます。
数式内の半角スペースは区切り文字を表しています。
数式を入力する先と、その右側の展開範囲は空白にしておく必要があります。
値が存在すると、スピルと呼ばれる展開が妨げられ、エラーになることがあります。
【操作のポイント】区切りがカンマなら、数式の半角スペースをカンマへ変更します。
行方向に分けるTEXTSPLIT関数
同じ文字列を縦方向に分けたい場合は、行区切り文字の引数を使います。
B2に次の数式を入力してください。
=TEXTSPLIT(A2,, ” “)
最初の区切り文字を省略し、2つ目の区切り文字に半角スペースを指定することで、結果が下方向へ展開されます。
氏名、部署、区分などを縦に並べて確認したい場合に便利です。
横方向と縦方向のどちらを使うかは、後から集計しやすい表の形を基準に決めましょう。
列方向の区切り文字は第2引数です。
行方向の区切り文字は第3引数です。
【操作のポイント】関数を使うと、元データを変更したときに分割結果も自動更新されます。
数式のコピーとオートフィル
サンプルデータでは1行目をヘッダーとし、2行目以降に文字列があるものとします。
B2へTEXTSPLIT関数を入力した後、複数行のデータへ同じ数式を適用したい場合は、数式セルを下へコピーします。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 氏名・部署 | 姓 | 名 | 部署 |
| 2 | 山田 太郎 営業部 | 山田 | 太郎 | 営業部 |
| 3 | 佐藤 花子 総務部 | ↓ |
B2の右下に表示される小さな四角形はフィルハンドルです。
この位置へマウスポインターを合わせ、下へドラッグすると、次の行にも数式をコピーできます。
ただしTEXTSPLITの結果は右側へ広がるため、B列だけでなくC列以降にも十分な空きが必要です。
コピー後はA3を参照する式に自動調整され、行ごとに正しいデータを分割できます。
【操作のポイント】最初の数式をB2へ入れ、オートフィルで下へ展開する流れが効率的です。
関数で文字列を任意の位置から分ける方法
続いては、区切り文字がない文字列を文字数や位置に応じて分ける関数を確認していきます。
| A列のコード | 分類 | 番号 |
|---|---|---|
| ABC12345 | ABC | 12345 |
LEFT関数による先頭文字の取り出し
LEFT関数は文字列の左端から指定した文字数を取り出す関数です。
A2の先頭3文字をB2へ表示する場合は、次の数式を使います。
=LEFT(A2,3)
ABC12345という文字列なら、結果はABCです。
分類コードのように、先頭部分の桁数が決まっているデータに適しています。
文字数を変える場合は、第2引数の3を必要な数へ変更します。
【操作のポイント】全角文字も1文字として数えるため、日本語の分類名にも利用できます。
RIGHT関数による末尾文字の取り出し
RIGHT関数は文字列の右端から指定した文字数を取り出します。
A2の末尾5文字をC2へ表示する場合の数式は次のとおりです。
=RIGHT(A2,5)
ABC12345なら、結果は12345です。
先頭の分類と末尾の番号を別々に扱うことで、並べ替えや条件付き集計がしやすくなります。
先頭と末尾を別の列へ分けても、元データはA列に残せます。
【操作のポイント】番号に先頭のゼロが含まれる場合は、セルの表示形式も確認しましょう。
MID関数による途中文字の取り出し
MID関数は文字列の途中から、指定した数だけ文字を取り出します。
たとえばA2の4文字目から2文字を取り出す場合は、次の数式です。
=MID(A2,4,2)
第2引数は取り出しを始める位置、第3引数は取り出す文字数を示します。
部署コードや日付コードなど、先頭と末尾以外に意味のある情報が含まれるデータで活用できます。
LEFTは左端から取り出します。
RIGHTは右端から取り出します。
MIDは途中の任意位置から取り出します。
【操作のポイント】複雑なコードは、どの文字位置が何を意味するかを先に表へ整理しましょう。
罫線と結合を使った分割風レイアウト
続いては、入力用の表や帳票でセルを分割したように見せるレイアウトの作り方を確認していきます。
| 項目 | 入力欄1 | 入力欄2 |
|---|---|---|
| 連絡先 | 市外局番 | 電話番号 |
罫線で入力欄を区切る方法
帳票では、セルを細かく分けた上で罫線を引くと、入力欄が明確になります。
対象範囲を選び、ホームタブの罫線から格子を選択してください。
外枠だけを強調したい場合は外枠、内部の区切りも必要な場合は格子を選びます。
セルの分割感を出したいときは、結合よりも罫線と列幅の調整が扱いやすい場合があります。
【操作のポイント】印刷する帳票では、画面上だけでなく印刷プレビューでも罫線を確認します。
結合セルを使う場面と注意点
大きなタイトルや分類見出しには、複数セルを結合して中央揃えにする方法が便利です。
一方で、結合セルは並べ替え、フィルター、コピー、数式入力で制約になることがあります。
データベースのように一覧を管理する表では、明細部分のセル結合は避けるほうが安全です。
見出しのみ結合し、データ行は1行1レコードの形を維持すると、後の集計もスムーズです。
【操作のポイント】結合は見出し中心に限定し、データ入力欄は通常のセルで構成します。
列幅と行の高さによる見やすさの調整
セルを増やしただけでは、文字が読みにくくなることがあります。
列番号の境界をドラッグすると列幅を変更でき、行番号の境界をドラッグすると行の高さを調整できます。
複数列を選択してから右クリックし、列の幅を選べば数値で統一することも可能です。
入力欄の幅をそろえると、表全体に整った印象が生まれます。
データが収まる幅と、印刷時の読みやすさの両方を考えることが大切です。
【操作のポイント】文字列の長さが異なる列は、ホームタブの折り返して全体を表示する設定も検討します。
まとめ エクセルで1つのセルを横・縦に分割する方法
エクセルでは、単独のセルを途中から物理的に分けることはできません。
しかし、列を挿入すれば横方向に、行を挿入すれば縦方向に、実用上はセルを分割したのと同じ形へ整えられます。
結合セルなら結合解除によって元のセルへ戻せます。
1つのセルに入った文字列を複数列へ分ける場合は、カンマや空白を使う区切り位置が便利です。
元データを残しながら自動更新したい場合には、TEXTSPLIT関数による分割が適しています。
区切り文字がないコードは、LEFT関数、RIGHT関数、MID関数を組み合わせると、必要な情報ごとに取り出せます。
帳票の見た目を整える目的なら、罫線、列幅、行の高さを調整する方法も有効です。
データの整理、集計、印刷など、最終的な用途に合う方法を選び、扱いやすいエクセル表を作成しましょう。