Excelで「氏名」「部署コード」「商品番号」のような文字列が1つのセルにまとまっていると、並べ替えや集計の前に列を分けたくなることがあります。Microsoft 365のWindowsデスクトップ版Excelでは、データタブの区切り位置を使うと、カンマ、スペース、タブなどの区切り文字を基準にして文字列を複数列へ分割できます。右隣のセルにデータがあると上書きされる可能性があるため、先に保存し、必要なら元の列をコピーしてから作業するのが安全です。
区切り位置でできること
区切り位置は、1つのセル内に入っている文字列を、隣の列へ分けて配置するための機能です。たとえば「山田 太郎」をスペースで分けて姓と名にしたり、「A-001-東京」をハイフンで分けて分類、番号、地域にしたりできます。
ExcelのセルそのものをWordの表のように半分へ分割する機能ではありません。分割後の値は、選択した列の右側へ展開されます。そのため、分割結果を置く列が空いているか、表示先を別の空き列に指定できるかを先に確認してください。
対象環境とWeb版との違い
この記事では、Microsoft 365のWindowsデスクトップ版Excelを対象にします。Microsoftの案内では、区切り位置指定ウィザードはExcel for Microsoft 365、Excel 2024、Excel 2021、Excel 2019、Excel 2016などで使える機能として説明されています。
Excel for the webでは、デスクトップ版と同じ区切り位置指定ウィザードを使えない場合があります。Web版で同じような分割をしたいときは、TEXTSPLITなどの関数を使う方法を検討します。ここでは、デスクトップ版でメニューから分割する手順に絞って説明します。
作業前に確認すること
区切り位置を実行する前に、次の点を確認します。
- 元データを残したい場合は、対象列を別の列や別シートへコピーしておく
- 分割結果が入る右側の列に、消したくないデータがないか確認する
- 社員番号、郵便番号、商品コードなど、先頭の0を残したい値がないか確認する
- 分割の基準になる文字が、データ内で一貫しているか確認する
特に先頭の0を含むコードを扱う場合は注意が必要です。区切り位置の途中で列のデータ形式を指定できるため、番号ではなく文字列として扱いたい列は、ウィザード内で文字列を選ぶと意図しない変換を避けやすくなります。
区切り文字で文字列を分割する手順
カンマ、スペース、タブ、ハイフンなど、特定の文字で区切られているデータを分ける基本手順です。
- 分割したい文字列が入っているセル範囲、または列を選択します。
- リボンのデータタブを開きます。
- データ ツールグループにある区切り位置を選択します。
- 区切り位置指定ウィザードで区切り記号付きを選び、次へ進みます。
- 分割に使う区切り文字を選びます。カンマとスペースを両方使うなど、複数選ぶこともできます。
- データのプレビューで、列の分かれ方が意図どおりか確認します。
- 必要に応じて次へ進み、列のデータ形式や表示先を指定します。
- 完了を選択して分割します。
表示先を変更しない場合、分割結果は元の列から右方向へ配置されます。右側に既存データがある場合は、空き列を挿入するか、ウィザードの表示先で別の空きセルを指定してから完了します。
スペースで氏名を分ける例
たとえばA列に「山田 太郎」「佐藤 花子」のような氏名が入っている場合、A列を選択して区切り位置を開きます。区切り記号付きで進み、区切り文字としてスペースを選びます。プレビューで姓と名が別々の列に分かれていれば、表示先を確認して完了します。
全角スペースと半角スペースが混在している場合、思ったように分かれないことがあります。その場合は、先に置換機能でスペースの種類をそろえるか、データの作りを確認してから再実行します。無理に何度も区切り位置をかけると、列が増えたり既存データを上書きしたりする原因になります。
カンマ区切りのデータを列に分ける例
「商品A,100,東京」のようにカンマで区切られた値も、同じ手順で分割できます。区切り文字でカンマを選び、プレビューで3列に分かれることを確認します。
データに「商品A, 100, 東京」のようにカンマの後ろへスペースが入っている場合は、カンマとスペースの扱いに注意します。スペースを区切り文字として追加すると、不要な空白を取り除きやすい一方で、商品名や住所などの中にスペースが含まれるデータでは意図しない位置で分かれることがあります。プレビューで数行だけでなく、できればデータの下の方も確認してから完了してください。
固定幅で分割したい場合
区切り文字がなく、先頭3文字が分類、次の4文字が番号のように桁位置で意味が決まっているデータでは、ウィザードの最初で固定幅を選ぶ方法があります。固定幅では、プレビュー上で分割位置を指定して列を分けます。
固定幅はコードや整形済みの一覧に向いていますが、文字数が行によって違うデータには向きません。名前や住所のように長さがばらつく内容では、区切り文字付き、関数、Power Queryなど別の方法を検討します。
うまく分割できないときの確認点
分割結果がずれるときは、まず区切り文字が本当に同じかを確認します。見た目が同じ空白でも、半角スペース、全角スペース、タブが混ざっていることがあります。カンマも、日本語の読点や全角カンマが混ざると別の文字として扱われます。
分割後に日付や数値へ勝手に変わる場合は、ウィザードの列のデータ形式を確認します。コードやIDのように見た目を保ちたい列は、文字列として扱う指定が役立ちます。
元に戻したい場合は、分割直後ならCtrl+Zで戻せます。保存して閉じた後は戻しにくくなるため、重要な表では元データを残した作業列を作るか、ブックを複製してから区切り位置を使うと安心です。
区切り位置と関数の使い分け
区切り位置は、手元の表を一度だけ整える作業に向いています。操作が分かりやすく、プレビューを見ながら分割できるため、初心者でも試しやすい方法です。
一方で、元データが後から増える表や、同じ分割を何度も繰り返す表では、TEXTSPLITなどの関数を使う方が管理しやすい場合があります。区切り位置は実行した時点の結果をセルへ書き込む操作なので、元の文字列が変わっても分割済みの列は自動更新されません。作業の目的が一度きりの整理なのか、継続的な更新なのかを考えて使い分けると、後の修正が少なくなります。