создание цикла Excel vba для горизонтального вывода списка дат между начальной и конечной датами для каждого набора вертикальных дат - PullRequest
0 голосов
/ 06 сентября 2018

У меня есть список дат начала и окончания Cols J & K, этот список является динамическим. Мне нужно перечислить отдельные даты между двумя датами в строке (P13) справа от каждого набора дат по горизонтали. Код Exit 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 строк.

1 Ответ

0 голосов
/ 06 сентября 2018

Не могу сказать, что я точно знаю, что вы ищете, но это перебирает строки с 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...