Как в Excel вставить нужное количество строк
Добрый день, уважаемые читатели и подписчики блога! Статья сегодня будет короткой. В ней будет ответ на вопрос: как быстро вставить необходимое количество строк в таблицу? Оговорюсь сразу — стандартными способами.
Вставка не смежных строк
Необходимо выделить строки через одну с зажатой клавишей Ctrl.
Далее щёлкаем на любую выделенную строку правой кнопкой мышки и выбираем команду вставить.
Получим вот такой результат. Помним о том, что в Excel новые строки вставляются только выше выделенной строки, текст соответственно будет сползать вниз.
Для смежных строк алгоритм будет точно такой же. Только без клавиши Ctrl.
Выделение и вставка большого количества строк
Как вы уже догадались, для вставки такого типа необходимо выделить сразу много строк. Тут поможет небольшой трюк:
- щёлкаем на первую ячейку (строку) с которой хотим начать выделение;
- в адресном поле стираем букву столбца;
- ставим двоеточие и указываем номер строки до которой необходимо выделение;
- нажимаем Enter.
Выделится диапазон с 3 по 50 строку.
Щёлкаем по выделенному правой кнопкой, выбираем «Вставить». Помним, что строки вставляются выше! К таблице добавились строки с границами в количестве 47 штук. Уменьшу масштаб, чтобы влезли все строки.
Вот и всё. Да, неудобно, да, долго, но авторы программы почему-то не оставили другого стандартного способа добавления строк.
Если вы знаете другой способ буду очень рад услышать его в комментариях!
Inserting new rows is the easiest way to add new fields into your worksheet area. Since Excel inserts rows by copying the formatting of the previous row, it is usually more practical than moving bottom cells to open up space for new data. Thanks to VBA, we can insert rows dynamically. In this guide, we’re going to show you how to insert specific number of rows in Excel.
Download Workbook
Preparation
First, you need to open the VBA (Visual Basic for Applications) window and add a module.
- Press Alt + F11 to open the VBA window
- In the VBA window, click Insert on the toolbar
- Click the Module option
Macro logic
The logic behind of inserting rows is controlled by two elements:
- The row above which you want to insert new rows. You can think of this as the anchor row.
- Number of rows.
Once these elements are set, the macro will select the number of rows, starting with the anchor row and run Insert method.
Range(Rows(AnchorRow), Rows(AnchorRow + RowCount — 1)).Insert
You can identify these elements in the code with set values, gather this information dynamically such as from the active cell, or through user input.
AnchorRow = 3 ‘Static
AnchorRow = ActiveCell.Row ‘Selected Cell
AnchorRow = Application.InputBox(Prompt:=»Please select a cell», Type:=8).Row ‘User input
Select the one that best fits your use case. Let’s now see the code block.
How to insert specific number of rows
The following code requires the user select a cell in the anchor row.
Sub InsertRows1()
‘Define variables
Dim AnchorRow As Integer, RowCount As Integer
‘Set variables
AnchorRow = ActiveCell.Row ‘Selected Cell
RowCount = Application.InputBox(Prompt:=»Please enter how many rows you want to insert», Type:=1) ‘User input
‘Insert rows
Range(Rows(AnchorRow), Rows(AnchorRow + RowCount — 1)).Insert
End Sub
The next and final sample code will insert a specific number of rows above the user-prompted cell.
‘This macro will insert static number of rows above the user-prompted cell
Sub InsertRows2()
‘Define variables
Dim AnchorRow As Integer, RowCount As Integer
‘Set variables
AnchorRow = Application.InputBox(Prompt:=»Please select a cell», Type:=8).Row ‘User input
RowCount = 3 ‘Static
‘Insert rows
Range(Rows(AnchorRow), Rows(AnchorRow + RowCount — 1)).Insert
End Sub
How can I fill a certain number of rows in Excel?
Let’s say 5 and it fills 5 rows with numbers, like 1 2 3 4 5
(downwards 1 number each cell). If I change it to 12 it should result in 1 2 3 4 5 6 7 8 9 10 11 12
.
I could do it by dragging the formula =A1+1
down, but then I have to adjust the last number manually (it will vary from ~50 to ~900).
feetwet
3,1967 gold badges45 silver badges83 bronze badges
asked Jan 9, 2014 at 19:56
2
If the need for automation is not so great then you can use built-in Excel functionality as outlined in my answer. If you need a more automated solution then you will have to record a Macro to accomplish it.
Using the Fill
option from the ribbon/toolbar, select Series
and then adjust your parameters accordingly, filling in a Column from 1 to n. Screeshots below:
This brings up a dialog box which you complete as per your requirements.
answered Jan 9, 2014 at 20:12
Matt WellerMatt Weller
2,6742 gold badges21 silver badges30 bronze badges
Ok. This solution will require you to paste a formula down your entire possible range (ex. in your case to row 900). Assuming:
— Your first value is in A1
— Your step size is 1
— The number of rows you want to change is in D1,
You should be able to copy the following formula into A2 and then drag it through your desired range:
=IF(ROW()<=$D$1,A1+1,"")
The only caveats are:
— That you can’t enter values manually into Column A in that entire range
— There are 900 formulas hanging out and recalculating on your sheet
answered Jan 9, 2014 at 20:41
M.BanerjeeM.Banerjee
951 silver badge7 bronze badges
1
Click in any cell (let’s assume cell C5
). Type =ROW()-ROW(C$5)+1
and press enter then drag down the arrow at the bottom right corner to create numbering as far as you want. One nice advantage is that it will not break if you add rows before or within, or delete rows before or within. At any time you can go to the last cell and drag more to create more numbers and it will pick up right from the last number.
BaCaRoZzo
7,4126 gold badges55 silver badges80 bronze badges
answered Dec 27, 2014 at 16:43
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.
Excel 2013
-
Чтобы вставить несколько строк, выделите строки, над которыми необходимо вставить новые строки.
-
Выделять следует столько же строк, сколько нужно вставить. Например, чтобы вставить три новых строки, выделите три строки.
-
Щелкните правой кнопкой мыши выделенные ячейки и выберите «Вставить» На листе появятся новые пустые строки.
Нужна дополнительная помощь?
Спасибо за ваш отзыв!
×
enot7 Пользователь Сообщений: 200 |
Добрый день! Подскажите, как добавить автоматически пустые строки (в примере — 10 стр, может и 20, но думаю можно регулировать потом количество), перед каждой пустой ячейкой в столбце В? Количество строк может быть разным, большие объемы отчета не позволяют делать добавление в ручную на каждую строчку. Изменено: enot7 — 28.05.2018 16:15:18 |
TheBestOfTheBest Пользователь Сообщений: 2366 Excel 2010 +PLEX +SaveToDB +PowerQuery |
Выделяете 10 строк, начиная с той, перед которой требуется вставить, Ctrl+ (плюс около цифр справа). Неизлечимых болезней нет, есть неизлечимые люди. |
vikttur Пользователь Сообщений: 47199 |
|
enot7 Пользователь Сообщений: 200 |
TheBestOfTheBest, так это вручную получается на каждую нужную строчку добавление, а мне нужно автоматичеси, т.к. строк тысячи. |
StoTisteg Пользователь Сообщений: 441 |
Макрос написать можно, но как мы узнаем, по какому признаку находить, после чего вставлять и сколько? |
enot7 Пользователь Сообщений: 200 |
StoTisteg, добавить 10 строк (может и 20, но думаю можно регулировать потом количество), перед каждой строчкой где заполнена ячейка в столбце В. |
TheBestOfTheBest Пользователь Сообщений: 2366 Excel 2010 +PLEX +SaveToDB +PowerQuery |
#7 28.05.2018 14:53:22
А почему это не вписано в #1? Может Вы допишите полностью что надо? С учетом #6 Изменено: TheBestOfTheBest — 28.05.2018 14:53:59 Неизлечимых болезней нет, есть неизлечимые люди. |
||
enot7 Пользователь Сообщений: 200 |
TheBestOfTheBest, вы меня подзапутали) в #1 прописано правильнее после чего и сколько строк. Изменено: enot7 — 28.05.2018 15:14:57 |
TheBestOfTheBest Пользователь Сообщений: 2366 Excel 2010 +PLEX +SaveToDB +PowerQuery |
А где написано; «строк тысячи». Из #1 видно что надо добавить 10 строк и все. Неизлечимых болезней нет, есть неизлечимые люди. |
enot7 Пользователь Сообщений: 200 |
TheBestOfTheBest, азве это обязательно, я же написала автоматически? ранее не приходилось уточнять количество строк в файле, который в работе, я же прикрепила только пример. Может быть тысячи, может быть одна тысяча, а может и 500, это разные отчеты будут. |
Казанский Пользователь Сообщений: 8839 |
#11 28.05.2018 16:26:47 enot7, так?
|
||
StoTisteg Пользователь Сообщений: 441 |
#12 28.05.2018 16:32:45
Прикрепленные файлы
Изменено: StoTisteg — 28.05.2018 16:43:58 |
||
StoTisteg Пользователь Сообщений: 441 |
#13 28.05.2018 16:46:06 Казанский, Вы вставляете перед каждой заполненной:
|
||
TheBestOfTheBest Пользователь Сообщений: 2366 Excel 2010 +PLEX +SaveToDB +PowerQuery |
#14 28.05.2018 21:01:58
Если строк 20, то проще руками сделать, чем тратить время на отладку макроса, три абсолютно разных подхода. Изменено: TheBestOfTheBest — 28.05.2018 21:03:01 Неизлечимых болезней нет, есть неизлечимые люди. |
||
StoTisteg, нет, ПОСЛЕ каждой заполненной ОБЛАСТИ. Пройдите по шагам, увидите. |
|
Ігор Гончаренко Пользователь Сообщений: 13746 |
#16 28.05.2018 22:17:56 используйте процедуру
в нужным местах столько раз, сколько Вам требуется
процедура Test вставит пред 5-й строкой 10 новых строк (5-я станет 15-й) Изменено: Ігор Гончаренко — 29.05.2018 09:33:21 Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||||
enot7 Пользователь Сообщений: 200 |
Казанский, спасибо, все срабатывает! |
enot7 Пользователь Сообщений: 200 |
#18 29.05.2018 09:18:05 StoTisteg, спасибо ваш вариант тоже очень подходит!! |