Excel VBA - найти максимум для зимних месяцев - PullRequest
0 голосов
/ 19 ноября 2018

Я пишу публичную макро-функцию для определения максимального количества последних N непустых ячеек для зимних месяцев (ноябрь, декабрь, январь, февраль).

Вот что я получил:

Public Function SuperMax_Winter(rng2 As Range, rng As Range, N As Long) As Double
Dim RngCnt, RngCnt2 As Long, i As Long, Zum As Double, j As Long
Dim ary() As Double
ReDim ary(0)

j = 0
RngCnt = rng.Count
RngCnt2 = rng2.Count

If RngCnt <> RngCnt2 Then SuperMax_Winter = "#ERROR!"

For i = RngCnt To 1 Step -1
    If rng(i).Value <> "" Then
        If rng2(i).Month = 11 Or rng2(i).Month = 12 Or rng2(i).Month = 1 Or rng2(i).Month = 2 Then
            ary(j) = rng(i).Value
            If j = N - 1 Then Exit For
            ReDim Preserve ary(j + 1)
            j = j + 1
        End If
    End If
Next i

SuperMax_Winter = Application.WorksheetFunction.Max(ary)

End Function

Но я получаю #VALUE! ошибку.

1 Ответ

0 голосов
/ 19 ноября 2018

Я думаю, Месяц должен быть первым:

If Month(rng2(i).Value)= 11 Or Month(rng2(i).Value)= 12 Or Month(rng2(i).Value)= 1 Or Month(rng2(i).Value)= 2 Then

Надеюсь, эта помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...