Excel keyboard shortcut to copy/fill down for all cells with non-blank adjacent cells?
I'm looking for a keyboard shortcut that will duplicate the functionality available by double-clicking the "handle" in the bottom-right corner of a cell. Is there something that can do this, without third-party software or creating custom macros?
I provide you with two methods to accomplish what you want. Unfortunately, both methods do have their own caveats, since Excel does not provide an all-in-one keyboard shortcut for auto-fill. I highly suggest you try both methods and then determine which works best for you. Outside of these two methods, I do not believe you can accomplish what you seek without the use of macros or add-in modules. Should you go the macro route, the AutoFill
method on any Range
object should be all that you need.
Method 1 (alternate, but it works with no mouse interaction)
Another way to accomplish this is to use a combination of the fill-down shortcut and the select all in range. After you enter the data in the cell, press Ctrl+Shift+End to select from the current cell to the end of the range that would be auto-filled. Then, press Ctrl+D to "fill down" into the entire range from the top cell.
Method 2 (my preferred way, one-time mouse interaction)
Once you fill in the cell you want to auto-fill downwards, double-click the bottom right corner as usual. To repeat the "auto-fill down" step, so long as you only enter data and press enter, you can repeat it by pressing Ctrl+Y.
This means that you do need to use the mouse, but only the first time. All subsequent work can be done purely with the keyboard, so long as you only use it to enter data (i.e. you don't use the context menu button to modify anything).
Note that the first method does come with a minor caveat - your view/cursor will move to the bottom of the spreadsheet (which does not happen with the Ctrl+Y method). You can press the Home key to move the cursor back up quickly.
I'm also curious about a shorter keybind for the Autofill Handle. But this also works:
Key Sequence for Fill Series
Select the entire range you wish to extend the series, including the blank cells and the "seed" (the cell that contains the initial value on which the autofill series will be based).
Press ALT >> H >> F >> I >> S >> Alt + F >> Enter.
To create/edit your custom lists, press Alt + F, go to Popular then click on Edit custom lists. The custom lists serve as bases for how the Autofill Handle populates cells.
Fill Down
Ctrl+ D
Note
These key combinations only work for the English language of Excel. If you use Excel in any other language, search for the corresponding key combination for your language in: Home ribbon > Fill (in the Editing ribbon section) > Series.... In the dialog box select AutoFill and hit Enter. The fill down key combination may also differ (Ctrl+ D).
- Select the range you want the data to be filled including the first line/ cell where data is available to the last line/ cell where data ends.
- Press Ctrl + G (go to)
- Go to Specials and select "Blanks" from the options available. Press OK.
- In the cell you are currently in (having selected the blank cells in the rage) enter the formula referring to previous cell "= + up arrow" (Say if you are in cell A3, type =A2) and press Ctrl + Enter.
- Convert the above formula into values by making copy & paste selecting the entire range again.