36

Right clicking on a row and clicking insert is fairly time consuming. I'd rather not have to take my hands off the keyboard. How can I insert a new row above my current row using only the keyboard? I'm primarily interested in inserting a single row at a time, but would also be interested in answers that address multiple lines at a time.

2
  • 3
    It is not clear from your question whether you want to repeat "insert single row" many times in different locations, or whether you are not aware of tricks to insert multiple rows at the same time; also, keyboard shortcuts differ between Mac and PC versions so it might be worth expanding your question.
    – Floris
    Jan 27, 2015 at 12:39
  • If you want to have the right-click at the Keyboard use Shift+F10.
    – harper
    Jan 30, 2015 at 12:26

11 Answers 11

44

There are two options that I'm aware of, and both (unfortunately) require two steps.

Option 1:

  1. With a single cell selected, hit Shift + Space to select the row.
  2. Hit Control + Shift + + to insert a row above the current row.

Option 2:

  1. With a single cell selected, hit Control + Shift + + to insert a row.
  2. Hit Enter to accept the default of "Shift cells down."

If inserting many rows at once, I think the first option is the best, as you can repeat the second step without having to re-select the row.

7
  • 4
    Thank you. This works in Open Office / Libre Office as well.
    – dotancohen
    Jan 27, 2015 at 13:38
  • 12
    Alt, I, R seems faster for inserting a single row.
    – KRyan
    Jan 27, 2015 at 14:35
  • When you say "to insert a row" in option 1, does it go above or below (on mobile, can't check) [should also be mentioned in answer].
    – Cole Tobin
    Jan 27, 2015 at 15:48
  • The new row is inserted above--I've updated my answer.
    – jstricker
    Jan 27, 2015 at 19:48
  • 1
    I'd like to point out that this won't work if you attempt to use the numpad + it must be the one to the left of the backspace for some reason
    – Aequitas
    Jul 24, 2015 at 2:39
30

The following keyboard shortcut will insert one row above the active cell's row:

Press ALT + I (Insert) then press R (row).

On PCs, use the right click key on the keyboard to emulate a right-click on the current selection.

7
  • Alt+I+R brings me to inserting a diagram. Could you expand on your answer and explain exactly towards which menu you are heading?
    – avalancha
    Jan 27, 2015 at 10:01
  • ALT + I >> Old Insert Menu, to insert anything. R >> Row, C >> Column, and so on. @avalancha: Maybe you ended up on the Diagram Insert option in error? I checked on Excel 2013, and it still inserts rows for R, and columns for C. I have been using this keyboard shortcut since year 2007 on excel 2002.
    – ATG
    Jan 27, 2015 at 10:54
  • Thanks for the details but I still don't get it. What do you mean by "old" insert menu? Could you post a screenshot?
    – avalancha
    Jan 27, 2015 at 11:47
  • @avalancha: There is no menu shown. If you remember the old menus from the previous versions of Excel before the ribbon, every menu item was accessible by a string of mnemonics. The new mnemonics can be seen by pressing and releasing Alt, which were chosen not to conflict with the old ones. Pressing the old ones would not bring up any menu but instead a tooltip titled "Office access key: ...". Presumably your Excel version is not for a PC.
    – user21820
    Jan 27, 2015 at 12:10
  • 5
    Was going to be my answer if it wasn’t already here; +1. But it’s worth noting that this is a sequence, not necessarily keys to be pressed simultaneously. You can type Alt, then I, then R and get the same effect – I tend to find this much easier since it’s more similar to typing.
    – KRyan
    Jan 27, 2015 at 14:35
14

I found interesting the ALT + I ,R solution, which works in the English version of Excel, at any rate.

I have been using for years the macro below, assigned to Ctrl-N (which takes over from the shortcut defined for New Workbook), but you can assign to any key combination you prefer.

Sub InsertRow()
'
' InsertRow Macro
' Macro recorded 08.08.98 by A C Rowland
'
' Keyboard Shortcut: Ctrl+n
'
    Selection.EntireRow.Insert
End Sub
1
  • Welcome on SuperUser. If you find interesting an answer feel you free to upvote it. As you grow with reputation you will have the possibility to add comment too.
    – Hastur
    Jan 27, 2015 at 16:54
6

I use (windows):

  1. Shift + Space to select the current row
  2. "Keyboard right click" + I to insert a row

(*) the Keyboard right click looks like this:

enter image description here

5
  • This is a very similar solution to that which was provided by OP a number of hours ago, with a request that they are looking for a one-step solution.
    – CallumDA
    Jan 27, 2015 at 11:44
  • 1
    @CallumDS33 The option I propose is not using the mouse, which saves a few seconds.
    – assylias
    Jan 27, 2015 at 12:02
  • See upvoted answer from OP. Both good options if OP wanted two-step solutions. "Option 1" as OP calls it is not really different to this answer - neither use the mouse, and OP specifically mentioned that they are looking for one-step solution.
    – CallumDA
    Jan 27, 2015 at 12:10
  • @CallumDS33 My bad I thought you were referring to the question. I agree they are not fundamentally different but I personally prefer going through the right click shortcut than the menus - it's a matter of preference. And anyway there is no one step solution (apart from coding it in VBA) - my approach requires 4 keystrokes, same as the OP's answer. Feel free to downvote if you think my answer is not useful.
    – assylias
    Jan 27, 2015 at 12:38
  • looks like @ATG provided a 1-step solution
    – CallumDA
    Jan 27, 2015 at 13:03
4

You can also select multiple rows and then right-click to insert rows, or you can insert one row and then use CTRL-Y as many times as you need to insert rows. If you format your spreadsheet as a table, you don't even need to worry about copying your formulas.

3

This is a terrible terrible way of doing it but I want to help out future German (or other non-English) readers reading ATG's answer. In a German Excel 2007 I could reproduce the Alt navigation via

Alt + R + I + B + Enter

So to put it more generally: press Alt and then whatever brings you to Start, then to Insert (which is very far to the right in the Ribbon), then to Insert row and then - because Microsoft apparently thinks it's a good idea to assign a letter to two options in this menu - press Enter

I never knew this menu existed there. If you did already know then this answer might seem obvious to you but it took me some digging.

1

I'm still using the old Visicalc commands - typing /ir inserts a row above the current cell and /ic inserts a column to the left of the current cell.

0

Use Autohotkey and paste the following lines into the script:

;ms Excel insert row.  
;Select cell in row and press Ctrl+shift+I  
^+I::  
Send !I  
Send R  
0

I find the shortcut Ctrl++ (on numeric keypad) most comfortable as I don't have to look on keyboard, this is best for a touch typist (even for a non-touch user).

For inserting multiple rows, you can press once above shortcut and then just keep on pressing F4 (which repeates an action).

-1

To add certain rows in multiple places at one time, you can try this.

You can hold the Ctrl key, click one row, click another row, let go of Ctrl key, and then right-click to add the row.

I think if you click too many rows and/or in a filtered list, Excel will say the range is too complicated.

-1

You can just hit Alt + E and Excel will insert you a new row above the selected row.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .