您的位置首页  散文日记

vb excel_VB excel 单元格 文字 行数一看就会

VBA之根据单元格的值插入并复制行

vb excel_VB excel 单元格 文字 行数一看就会

 

Sub自定义复制行() 任意次数的复制行,根据B列中的数值(要求大于1的)来复制行 声明一个range对象变量mycellDim mycell As Range将Sheet1的B2赋值给mycellSet mycell = Sheets("Sheet1").Range("B2")

开始Do循环,直到单元格为空Do While Not IsEmpty(mycell) 如果mycell的值大于1 If mycell > 1 Then 在当前单元格下面一行插入整行,插入的行数为当前单元格值-1,即如果单元格值为2,则插入1行

Range(mycell.Offset(1, 0),mycell.Offset(mycell.Value - 1, 0)).EntireRow.Insert 复制mycell单元格所在行的值,并向下填充

.filldown指从指定区域的顶部单元格开始向下填充,直至该区域的底部区域中首行单元格的内容和格式将复制到区域中其他行内 Range(mycell, mycell.Offset(mycell.Value -1, 1)).EntireRow.FillDown。

End If mycell向下移动mycell.value(即mycell单元格值)行,将此单元格重新赋值给mycell,‘即如果mycell是B2,单元格值是2,会插入1行,之前的B3会被挪到B4,因此需要把B4单元格赋值给mycell,即B2向下移动的行数是B2的值

Set mycell = mycell.Offset(mycell.Value, 0) LoopEnd Sub

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186