我有一张excel表,看起来像这样:
我想在每个填充的单元格下面插入行(或单元格)。像这样:
我有数千条记录,因此需要自动执行此操作。我怎样才能做到这一点?
提前致谢!
答案 0 :(得分:3)
非VBA方法是制作新工作表,并在A1中输入此公式:
=INDEX(Sheet1!A:A, ROUNDUP(ROW(A1)/2, 0))
然后选择A1和A2(保留A2空白),复制它,选择Sheet1中两倍的行数,然后粘贴。
如果您只想要值,则可以选择A列并复制,然后仅粘贴特殊值和粘贴值。
答案 1 :(得分:1)
您可以使用以下代码在VBA中执行此操作:
Sub doIt()
Dim numRows As Long
Dim i As Long
numRows = ActiveSheet.UsedRange.Rows.Count
For i = numRows To 2 Step -1
ActiveSheet.Rows(i).Insert Shift:=xlDown
Next i
End Sub
答案 2 :(得分:0)
答案 3 :(得分:0)
或者,我从https://www.pcmag.com/article/149833/insert-alternate-blank-rows-in-excel
找到了以下解决方案您可以单独创建空白行,然后通过排序将它们与现有行交错。首先,在现有列A的左侧插入一个新列。在单元格A1中输入1,然后突出显示列A到包含数据的最后一行。从编辑菜单中选择填充|系列并单击确定。 A列现在应包含从1到总行数的数字。按Ctrl-C将这些单元格复制到剪贴板,单击最后一个单元格下方的单元格,然后按Ctrl-V进行粘贴。现在突出显示整个数据区域,包括在A列中只有一个数字的新行。从“数据”菜单中选择“排序”,然后在结果对话框中选择“无标题行”选项。在排序方式下选择列A,然后在选择列B下,然后单击确定。最后,删除A列。现在每1000个原始行之后都有一个空行。
由于空行通常会导致图表或计算出现问题,因此您可能需要快速删除它们。你可以使用类似的技术。
再次,在A列的左侧插入一个新列,并填充从1到数据末尾的系列。突出显示整个数据区域并按B列排序(实际数据的第一列)。这会将所有空行组合在一起。接下来,再次突出显示数据区域,然后按列A重新排序。空行消失,您的数据将恢复为原始顺序。最后,删除A列。
答案 4 :(得分:0)
简单方法: 在自由列(例如A列)中,用2,4,6填充前3行 自动将该列填充到数据末尾。 最后,用1,3,5填充接下来的3行 自动填充与数据相同数量的行 现在选择所有,数据->排序-> A wich会将您的数据排序为1(空)2(数据)3()空
;)