以下代码在B列具有值的情况下在A列中添加自动编号,我想更改该代码,以便它将从最后一行开始添加自动编号计数。 为什么?,因为如果我删除第一行中已经有数字的任何行,即。删除第五行和第六行后,我在第一列1、2、3、4、7、8中有序列。运行代码后,它将其更改回1、2、3、4、5、6,但是如果它可以从最后一行开始,如下所示:1、2、3、4、7、8、9、10等。换句话说,它不应更改现有行,而只是继续对新添加的行进行编号。 我该怎么办?
Sub AutoNumber()
Dim lastRow As Long
lastRow = Range("B" & Rows.Count).End(xlUp).Row
Range("A1").AutoFill Destination:=Range("A1:A" & lastRow), Type:=xlFillSeries
End Sub
答案 0 :(得分:2)
对于顺序序列,我更喜欢使用DataSeries而不是自动填充。
Sub AutoNumber()
Dim lastRowA As Long, lastRowB As Long
lastRowA = Range("A" & Rows.Count).End(xlUp).Row
lastRowB = Range("B" & Rows.Count).End(xlUp).Row
Range(cells(lastrowa, "A"), cells(lastrowb, "A")).DataSeries _
Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, Step:=1, Trend:=False
End Sub