既存の列の間へ移すときは、列を切り取り、移動先の列見出しで[切り取ったセルの挿入]を使います。通常の貼り付けで置き換える操作とは異なるため、挿入先を確認して進めましょう。
主な手順はWindows版デスクトップExcelを想定。Macでは切り取りに⌘+Xを使います。Web版や組織の設定によって利用できる操作は異なります。
練習する表と、完成後の並びを確認する
まずはダウンロードしたCSVを新しいブックで開きます。A列から順にID・Name(氏名)・Region(地域)・Amount(金額)・Status(状態)が並んでいます。サンプルは架空のデータです。
| ID | Name | Region | Amount | Status |
|---|---|---|---|---|
| 101 | Aki | East | 1200 | Open |
| 102 | Ren | West | 900 | Done |
| 103 | Mio | North | 1500 | Open |
最初の目標は、D列のAmountをNameの前へ移すことです。見出しだけでなく、その下のデータも列ごと移動します。実際の業務ファイルでは、作業前にコピーを保存しておくと元の状態を確認できます。
| ID | Name | Region | Amount | Status |
|---|---|---|---|---|
| 101 | Aki | East | 1200 | Open |
| 102 | Ren | West | 900 | Done |
| 103 | Mio | North | 1500 | Open |
| ID | Amount | Name | Region | Status |
|---|---|---|---|---|
| 101 | 1200 | Aki | East | Open |
| 102 | 900 | Ren | West | Done |
| 103 | 1500 | Mio | North | Open |
切り取りと挿入で列を移動する
- ワークシート上部の列見出し[D]をクリックし、Amount列全体を選択します。セルD1だけを選ぶ操作とは異なります。
- Ctrl+Xで切り取ります。選択範囲に移動用の枠が付いたことを確認します。
- 移動先の列見出し[B]を右クリックし、[切り取ったセルの挿入]を選びます。画面によっては[切り取ったセルを挿入]と表示されます。
- 見出しがID → Amount → Name → Region → Statusの順になったことを確認します。Amount列の数値は1200・900・1500のままです。
挿入先には「その列の左側へ入れる」という意味があります。この例ではB列の左へ入れ、元のName列とRegion列を右へずらします。列記号は移動後の位置に合わせて変わるため、見出し名も確認してください。
Shiftキーを押しながらドラッグする方法
Windows版デスクトップExcelでは、列の境界をドラッグして移す方法もあります。先ほどの表を元に戻してから試してください。
- 列見出し[D]でAmount列全体を選びます。
- 選択範囲の左右の境界にポインターを合わせます。列見出し同士の境目ではなく、選択範囲の枠を使います。
- Shiftキーを押したまま、A列とB列の間へドラッグします。挿入位置を示す線が目的の場所に出たことを確認します。
- Shiftキーを押したままマウスのボタンを離し、その後でShiftキーを離します。
挿入線が出ない、列幅を変更してしまう、またはセルを選び直してしまう場合は、切り取りと挿入の方法へ戻ると操作位置を確認しやすくなります。
複数列をまとめて移動する
NameとRegionをまとめて移す場合は、隣り合うB列とC列の見出しを選択してから切り取ります。移動先の列見出しで[切り取ったセルの挿入]を選ぶと、2列の順番を保ったまま移動できます。
元の表でB:Cを選択し、A列の前へ挿入すると、Name → Region → ID → Amount → Statusになります。離れた複数列は一度に処理しようとせず、1列ずつ見出しを確認しながら移してください。
離れた2列を入れ替え、間の列を残す
NameとAmountの位置を交換して、Regionを間に残したい場合は2回に分けて移動します。元の並びから始めてください。
- Amount列を切り取り、Name列の前へ挿入します。この時点ではID → Amount → Name → Region → Statusです。
- 現在のName列を切り取り、Status列の前へ挿入します。
- 最終的な並びがID → Amount → Region → Name → Statusになったことを確認します。
最初の移動で列記号が変わるため、2回目は元の「B列」という記憶に頼らず、Nameという見出しを探します。
列を移動できないときに確認すること
| 症状 | 確認すること |
|---|---|
| メニューの項目が選べない | セルの編集を終了し、シートが保護されていないか確認します。組織のファイルでは、必要に応じて管理者へ確認します。 |
| 結合セルに関するメッセージが出る | 移動元と移動先に結合セルがないか確認します。元データの内容を確認せずに結合を解除しないでください。 |
| 列幅が変わるだけ | 列の幅を調整する境目をつかんでいる可能性があります。列全体を選び直し、切り取りと挿入で試します。 |
| フィルターやテーブルがある | 表示されていない行や表外のセルも関係します。練習用のコピーで範囲を確認し、複雑な表は1列ずつ操作します。 |
移動後はIDと金額の組み合わせ、数式、グラフの参照範囲も確認します。文字列で書かれた参照先や外部の連携処理まで、自動で追従するとは限りません。
よくある質問
列の移動と「行列の入れ替え」は同じですか?
列の移動は左右の順番を変える操作です。横方向の見出しを縦へ並べ直したい場合は、行と列の入れ替え(転置)のガイドをご覧ください。
移動後、値が正しいかどうかを確認するには?
練習表ではIDが101・102・103の3件のままで、金額の合計が3600になっていることを確認します。さらに各IDとName・Amountの対応が変わっていないか、元の表と見比べてください。
VBAを書いたほうがよいですか?
単発の列移動なら標準操作で十分です。同じレイアウト変更を何度も繰り返す場合は、対象ブックや見出しを明確にしたうえで自動化を検討します。
サンプルをダウンロード
この記事のサンプル素材無料ダウンロード · .csvUTF-8のCSVデータです。Excelの[データ]→[テキストまたはCSVから]で取り込めます。ID列の先頭の0を残す場合は、その列のデータ型をテキストに指定してください。
画面や機能はExcelのバージョンや利用環境によって異なります。例を手元のブックのコピーで確認してから、実際のデータへ適用してください。