The fastest way to move a column
Right-click the column header (the letter at the top) and select Cut. Then right-click the column where you want it to go and select Insert Cut Cells. Excel shifts everything over and closes the gap left behind.
This method works whether you are moving one column or ten at once. If you need to move columns B, C, and D together, click B, hold Shift, and click D to select all three, then cut and insert as one block.
The alternative is to click and drag the column header to a new spot, but this only works if the destination is visible on your screen. Cut and insert is more reliable, especially in large spreadsheets where you cannot see both the source and destination at the same time.
Key Takeaways
- Right-click a column header, select Cut, then right-click where you want it and choose Insert Cut Cells to move it without losing data.
- Select multiple adjacent columns by clicking the first, holding Shift, and clicking the last, then cut and insert them as a group.
- Cut and insert closes the gap automatically, so you do not end up with empty columns left behind.
- Dragging a column header works only if you can see both the source and destination on screen at the same time.
- Moving a column preserves all formulas and formatting that reference cells in that column.
Selecting multiple columns at once
If the columns you want to move are next to each other, click the header of the first one, then hold Shift and click the header of the last one. All columns in between highlight in blue. Then right-click any of the selected headers and choose Cut.
If the columns are not adjacent — for example, you want to move columns B and E but not C and D — click column B, then hold Ctrl (or Cmd on Mac) and click column E. Both highlight separately. Cut and insert works the same way, but Excel will move them to sit next to each other in their new location.
When you insert cut columns, they land as a block starting at the column you right-clicked. If you cut columns B and E and insert at column G, both will end up between G and H, with B before E.
Moving columns without closing the gap
If you want to copy a column to a new location but keep the original in place, use Copy instead of Cut. Right-click the column header, select Copy, then right-click where you want it and choose Insert Copied Cells. The original column stays where it is.
This creates a duplicate, so if your spreadsheet has formulas that reference the original column by letter (like =SUM(B:B)), those formulas will not automatically update to include the copy. You may need to adjust them by hand.
If you copy a column and paste it into an empty area, the original column stays in place and you get a second copy. If you paste into a column that already has data, Excel will ask whether you want to shift the existing data to the right.
What happens to formulas when you move a column
Formulas that reference cells in the column you are moving update automatically. If cell D5 contains =B2+B3 and you move column B to column F, that formula becomes =F2+F3. Excel tracks the column by its contents, not its position.
Formulas that reference an entire column (like =SUM(B:B)) also update. After the move, they become =SUM(F:F). This is true whether the formula is in the same spreadsheet or a different one.
The one exception is if you have a formula that hardcodes a column letter as text — for example, a formula that builds a reference like ="B"&"2". Those do not update, because Excel sees them as text strings, not cell references. This is rare in most spreadsheets.
Moving columns in a table or named range
If your data is formatted as an Excel table (with a header row and filter buttons), moving a column works the same way, but the table structure moves with it. The column stays part of the table, and any formulas that reference the table by name (like =SUM(Table1[Sales])) continue to work.
If you have named a range — for example, a range called "Revenue" — and you move that range, the name moves with it. Any formula using that name will reference the new location automatically.
If you move a column that is part of a pivot table or a data validation rule, those features may break. Pivot tables reference columns by position, so moving the source data can cause the pivot table to show the wrong information. Always check pivot tables and validation rules after moving columns in the source data.
Undoing a move if something goes wrong
Press Ctrl+Z (or Cmd+Z on Mac) when ready after moving a column to undo the action. Excel will put the column back where it was and restore any data that was overwritten.
If you moved the column several steps ago and have done other work since, you can still undo, but it will undo all the steps in between as well. There is no way to undo just the column move without undoing everything after it.
If you are nervous about moving a column in a spreadsheet you rely on, save a copy first. Then move the column in the copy, check that everything looks right, and only then make the same change to the original.
Dragging a column instead of cutting
Click and hold on a column header, then drag it left or right to a new position. A thick line appears between columns to show where it will land. Release the mouse button to drop it there.
Dragging is faster if the destination is visible on your screen, but it only works for short distances. If you need to move a column ten positions to the right and you cannot see that far, you will have to scroll while dragging, which is awkward. Cut and insert is more reliable for long moves.
Dragging also does not work if your spreadsheet is frozen (if you have frozen panes to keep headers visible). In that case, use cut and insert instead.
Moving columns in Google Sheets
Google Sheets works almost the same way. Right-click a column header and select Insert 1 left or Insert 1 right to add a blank column, then cut and paste your data into it. Alternatively, right-click and choose Move column, which opens a menu to pick the new position.
You can also click and drag a column header in Google Sheets, just like in Excel. The drag-and-drop method is often smoother in Google Sheets because the interface is simpler.
If you are working on a shared Google Sheet, moving a column updates for everyone viewing the sheet in real time. There is no need to save — changes appear when ready.
Frequently Asked Questions
Can I move a column to a different sheet?
No, not directly. You have to cut the column, switch to the other sheet, and paste it there. If the other sheet already has data in that position, Excel will ask whether you want to shift the existing columns to the right. The original column will be deleted from the first sheet.
What if I move a column and a formula breaks?
Press Ctrl+Z to undo the move. Most formulas update automatically when you move a column, but if one does not, it usually means the formula references the column by a hardcoded letter (like the text string "B2" instead of a cell reference). You will need to edit that formula by hand after the move.
Does moving a column affect sorting or filtering?
No. If you have sorting or filtering applied to your data, moving a column does not change the sort order or filter settings. The data stays sorted or filtered the same way, just in a new column position. If you want to change the sort order after moving, you can re-sort from the Data menu.
Can I move a column if it contains formulas?
Yes. When you move a column that contains formulas, the formulas move with it, and any references to other cells update automatically. For example, if column B contains =A1+A2 and you move it to column F, it becomes =A1+A2 still (the references do not change because they point to column A, not to the column being moved).
What is the difference between moving and copying a column?
Moving deletes the column from its original location and closes the gap. Copying leaves the original in place and creates a duplicate. Use Cut to move, Copy to duplicate. Both methods update formulas that reference the column automatically.