Excel:根据模式每隔x行插入一行新的行
我有一个很长的两列excel列表。 每26行,我想插入两个新行,将剩下的行进一步向下。 所以基本上我有
26 ABC 27 DEF 28 GHI
并想要做到这一点
26 ABC 27 28 29 DEF 30 GHI
另外,如果可能的话,我想按照一个简单的模式将文本放入新的行:
1_sometext 1_someothertext 2_sometext 2_someothertext
所以以“1_”开头的行将进入第27行和第28行,以“2_”开头的行将进入第55行和第56行,并且数字不断增加。
一切皆有可能。 你只需要写这个VBAmacros应该看起来像这个
Sub someSubForLazyGuy() Dim currentSheet As Worksheet Set currentSheet = Sheets("Sheet2") Dim rowCounter As Long Dim spaceCounter As Long rowCounter = 27 spaceCounter = 1 With currentSheet Do While .Cells(rowCounter, 1).Value <> "" .Cells(rowCounter, 1).EntireRow.Insert .Cells(rowCounter, 1).EntireRow.Insert .Cells(rowCounter, 1).Value = spaceCounter & "_sometext" .Cells(rowCounter + 1, 1).Value = spaceCounter & "_someothertext" spaceCounter = spaceCounter + 1 rowCounter = rowCounter + 27 + 1 Loop End With End Sub
它的工作原理很简单。 你循环行,每插入27行你会插入2个新行。 然后你在这两行上填入你的sometext和其他文本,将行计数器移动27行,加1到你的新行,等等,直到列中有数据。