如何在现有的行之间插入n个空行
任何人都可以build议我的程序或公式插入n空白行之间的现有数据?
例如:我有数据从A1到A50,现在我已经在每行之间插入n个空行。
input:
要求的输出:
考虑这个屏幕截图:
在单元格C3中,input要在列A的单元格之间插入的行数。此单元格的范围名称为“RowsToInsert”。 或者,您可以在下面的公式中使用$C$3
单元格E2中的公式是
=INDEX(A:A,CEILING(ROW(A1)/(RowsToInsert+1),1))
或手动键入第一个值。 E3中的公式如下,复制下来:
=IF(CEILING(ROW(A2)/(RowsToInsert+1),1)=CEILING(ROW(A1)/(RowsToInsert+1),1),"",INDEX(A:A,CEILING(ROW(A2)/(RowsToInsert+1),1)))
当您更改单元格C3中的值时,相应地添加空行。 根据需要复制配方。 然后复制E列,并使用select性粘贴>值粘贴结果。
我会使用VBA来实现你所需要的,这是我会build议的代码
Dim n As Long 'number of blanks Dim dataLen As Long ' number of used rows Dim currentRow As Long Dim i, j As Long dataLen = Sheet1.Range("A" & Rows.Count).End(xlUp).Row n = 3 'number of blanks currentRow = 2 'start insert at row 2 For i = 1 To dataLen For j = 1 To n Sheet1.Rows(currentRow).Insert Next j currentRow = currentRow + n + 1 'offset the next row to start insertion Next i
随着公式这将是一点复杂,我猜。 这是你想要的吗? = IF(ROW(B1) – (9 * TRUNC(ROW(B1)/ 9,0))= 1, “一个”,IF(ROW(B1) – (9 * TRUNC(ROW(B1)/ 9,0 ))= 4 “2”,IF(ROW(B1) – (9 * TRUNC(ROW(B1)/ 9,0))= 7, “三”, “”)))