如何在现有的行之间插入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, “三”, “”)))