如何添加由引用单元格确定的行数

我有一个有数百个文件的Excel电子表格。 每个文件内有几个图像。 我需要每个图像在“父”文件行下插入一个新行。 我有代码,将插入正确数量的行,但它不会去到下一个单元格,没有任何偏移我更改正在修复它。

Sub CB3262014() Dim i As Integer, n As Integer, m As Long, currentCell As Range Set currentCell = ActiveCell Do While Not IsEmpty(currentCell) n = currentCell.Value m = currentCell.Row If n > 0 Then Rows(m + 1 & ":" & m + n).Insert Set currentCell = currentCell.Offset(n + 1, 0) Else Set currentCell = currentCell.Offset(1, 0) End If Loop End Sub 

我也在努力如何让它跳下来/每跳两行。 我的数据集的设置方式,有两行 – 然后是包含父文件的行以及要添加多less行的引用号。

以下是电子表格中的示例,以及我希望如何使用它。 我将填写文件名,我只是把它们放在那里,所以更容易看到发生了什么。

目前的电子表格[1]: http : //i.stack.imgur.com/zRdXE.png

Goal Spreadsheet [2]: http : //i.stack.imgur.com/6evMO.png

通过检查附加的图像,看起来循环是循环下来的空白行。因此,循环停止遇到第一个空白由于:

Do While Not IsEmpty(currentCell)

所以,用Do Until currentCell is Range("C100000").End(xlUp)取代Do Until currentCell is Range("C100000").End(xlUp)和循环应该按照预期继续。 一个小的性能改进将caching该单元格以保存评估每个循环,如:

 Dim lastCell As Range Set lastCell = Range("C100000").End(xlUp) Do Until currentCell is lastCell ...etc Loop