A family of Microsoft spreadsheet software with tools for analyzing, charting, and communicating data.
Hi robert jacobs,
If you need to insert many blank rows between existing data rows, doing them one-by-one via Insert Row quickly becomes impractical.
Option 1 (No macro): helper column + sort (good for “blank row after every row”)
- Add a helper column next to your data and number the existing rows 1, 2, 3, …
- Copy the entire range (data + helper column) and paste it directly below the original.
- In the pasted copy, clear the data cells you want to become blank rows (leave the helper numbers).
- If you want one blank row between every row, clear all non-helper cells in the pasted copy.
- Select the entire combined range (all columns), then Sort by the helper column (smallest to largest).
Because each helper number appears twice (one real row + one cleared row), sorting groups them together so the blank row sits next to its original row.
Option 2 (VBA, fastest if you do this often): insert one blank row between each row
Sub InsertBlankRows()
Dim i As Long, LastRow As Long
'Change column 1 (A) to a column that is always filled in your data
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = LastRow To 2 Step -1
Rows(i).EntireRow.Insert
Next i
End Sub
This inserts a blank row above each row from 2 down, which results in one blank row between each original data row. Working from the bottom up prevents row references from shifting during insertion.
Note: For large sheets, it’s a good idea to save a copy before sorting or running a macro.
Please let me know if this proves useful to you, or if you would like further assistance.
I'm looking forward to your reply.
If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment”.
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.