Is there a way to move a column (or row) to the left using only the keyboard? I known I can use ctrl-space (shift-space) to select a column (row), but how to move it to the left or right, actually swapping position with the column to its left or right?

(I am using Excel 2007)


If you're not set on using the keyboard only, highlight the column, either by Ctrl+Space or clicking on the column header. Then press and hold down the Shift key. In some environments you may see the selection box (border) around the column change to an I-bar. Then you can drag the column to the left or right (using the mouse) and it will move the column there without overwriting data or leaving a blank column.

This also works with rows, and with ranges of columns or rows. The I-bar changes to horizontal or vertical as you move the range, and separates the columns or rows where it will move the range to.

To summarize:

  • Ctrl+Space to select the source column(s).
  • Hold down Shift while you drag the column(s).
  • 2
    And if you use (Ctrl)+(Shift) while you drag, it will create new column(s) or row(s) and copy the data there, much like (Ctrl)+drag in Microsoft Word. – Scott Aug 1 '13 at 22:36
  • 2
    Nice! I've accepted your answer even though it requires brief usage of the mouse. As it might not be obvious to everyone: dragging the column is done by first hovering over the column borders (cursor changes into 4-arrows symbol) before pressing the left mouse button. – Rabarberski Aug 5 '13 at 7:03
  • 1
    I was really hoping there would be and easy way to do that like Alt + Up Arrow and Alt + Down Arrow in Visual Studio. Oh well. – Owen Johnson Jul 17 '15 at 21:56
  • 1
    The author of question asks how to MOVE a column using the keyboard only, but not how to select it for further moving with the mouse. – TecMan Nov 6 '15 at 9:25

Best I can come up with is something like this (note, this works in Excel 2003 - might not work in 07/10, but you've haven't indicated which version you are using):

Ctrl + Space to select the source col.

Ctrl + X to cut the col.

Left Arrow or Right Arrow to move to the column you want to move the selected column to the left of.

Crtl + Space to select the target col.

Crtl + + to insert the cut cells (with thanks to variant for that useful comment!).

I'm thinking that AutoHotkey or a short macro might be a good way to achieve this.
It should be easy to record a quick Excel macro using the above set of commands, just make sure "Relative Reference" is on.

  • Yep, that works (even in Excel 2007), bit long-winded though :-) – Rabarberski Aug 20 '10 at 9:00
  • Indeed, if you wish to use it a lot then record it as a macro and assign it a keyboard shortcut. Or try using AutoHotkey to automate it without having to add macros to your files. – DMA57361 Aug 20 '10 at 9:21
  • 4
    Instead of Alt+I then E, you can simply hit Ctrl + +. This will insert just the same. – variant Aug 20 '10 at 11:51
  • 1
    If you are in Excel 2007 / 2010 and are trying to move a column in a table be sure to select from the header cell with Ctrl + Space in the desired column and not just any cell in the column. Otherwise you'll get the error This operation is not allowed. The operation is attempting to shift cells in a table on your worksheet. – Urda Dec 6 '11 at 17:13

An important difference between inserting a blank column and pasting into it, vs. "insert cut cells" is that the later will shift your other columns to the right, but NOT their column width formatting. So if you 'insert cut cells,' all the columns to the right will have the widths of the their former columns one to the right and you will have to readjust them to fit your data.


According to the Excel keyboard shortcuts list, there is no built-in shortcut to achieve what you want.


To move a single cell or row or column do the following:

  • Select the cell(s)
  • Type Ctrl+X
  • Move to the new location
  • Do one of the following:
    • Type Enter or Ctrl+V, or
    • Press the ≣ (Menu) key (which may be between the Windows and Ctrl keys on some keyboards, or press Shift+F10 if the key is not available), and select "Insert Cut Cells".

The cells will be inserted to the left or above the selection.

  • Is this any different from Ctrl+X, Ctrl+V? – Noumenon Sep 10 '15 at 20:25
  • 1
    @Noumenon Yes, Ctrl+V will overwrite the selected cells , while Insert Cut Cells will insert the cut cells between the current location and the column to the left (or row above), shifting the current location to the right (or down). – GlennFromIowa Sep 16 '15 at 19:12

Try the following:

  • Double-click on the column you would like to move (it will highlight the whole column)
  • Hit Ctrl+X at the same time (you will see the selection cut)
  • Hit the arrow key to move in whichever direction you want to move (LEFT arrow Or Right Arrow)
  • Point between the columns, and release the mouse
  • Where you point after the next right column will be deleted automatically (careful: select one Blank column, then move the column )

Example: If you moving a column Between A & B, it is possible that B will be remove) so before moving any column, bring up an empty column between two columns and after you start moving the column.

In summary, select the column (Double click), CTRL+X, move with arrow left or right.

  • This was a bit difficult to follow, I tried my best with it, but you may want to clarify it some more. – jonsca Dec 8 '12 at 8:51

The method by Hemal (?) works, but the trick is to create a new column where you want to move to, Excel will leave a blank column behind where the data were previously to be used or deleted.

  1. Double click when the down-pointing arrow appears above the column header for the data you want to move.
  2. Hit Ctrl+x
  3. Move with arrow keys to the location of the new column and hit Enter
  4. Hit Enter

Data moved to the new column.

If you hit enter on a populated column, it is overwritten. Not slick or "clean", but it's an easy shoehorn to use.


If you want to move a particular row or column or cells you just need to select cells pressing Shift with Arrow key after selecting cells just press ctrl+shift+(+) and select the the option for moving down,up, right and left by arrow keys and press Enter. Done!

  • 1
    Welcome to Super User! This duplicates another answer and adds no new content. Please don't post an answer unless you actually have something new to contribute. – DavidPostill Jun 25 '16 at 18:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.