我有一个开始和结束日期列表Cols J&K此列表是动态的。我需要将两个日期之间的各个日期列为水平连接到每组日期右侧的行(P13)。 Exit Sub代码用于停止行更新并跳转到下一行而不是退出sub。我已经实现了这一行,我使用的代码是:
Dim StartDate As Date
Dim EndDate As Date
Dim NoDays As Integer
If Range("L13") <> "No" Then
Exit Sub
End If
StartDate = Range("J13").Value
EndDate = Range("K13").Value
NoDays = EndDate - StartDate + 1
Range("P13").Value = StartDate
Range("P13").Resize(NoDays).DataSeries Rowcol:=xlRows, Type:=xlChronological, Date:= _
xlDay, Step:=1, Stop:=EndDate, Trend:=False
这适用于一套。我不知道如何遍历每个可能多达12,000行的集合。
不能说我确切地知道你在追求什么,但这将循环到第13行到1000并处理你的代码。
Sub DateThing()
Dim StartDate As Date
Dim EndDate As Date
Dim NoDays As Integer
Dim i As Long
For i = 13 To 1000
If Range("L" & i) = "No" Then
StartDate = Range("J" & i).Value
EndDate = Range("K" & i).Value
NoDays = EndDate - StartDate + 1
Range("P" & i).Value = StartDate
Range("P" & i).Resize(NoDays).DataSeries Rowcol:=xlRows, Type:=xlChronological, Date:= xlDay, Step:=1, Stop:=EndDate, Trend:=False
end if
Next i
End Sub