Почему этот макрос vba игнорирует значение после if else? - PullRequest
0 голосов
/ 25 января 2019

У меня есть два столбца, первый - это дата в формате Год / Месяц, а другой - числовое значение оценки, которую я сделал.Я хочу получить среднее значение за каждый месяц с помощью макроса (мне нужно делать это много раз и много данных о нем).Итак, я решил создать массив дат и Матрицу результатов оценки.Цель состоит в том, чтобы сгруппировать все числовые значения по дате и получить среднее значение за месяц.Проблема в том, что этот код игнорирует значение, когда фактическая и последняя ячейки отличаются.

    Dim i As Integer 'number of rows
    Dim J As Integer 'manage row change
    Dim G As Integer 'manage column change
    Dim Fecha(48) As String
    Dim Matriz_FI(100, 100) As Double
    '--------------------------------------------------------------    --
    J = 0
    G = 0
    For i = 2 To 10
        If i = 2 Then
            Matriz_FI(J, G) = Sheets("Nueva Database").Cells(i, 11).Value
            Fecha(J) = Sheets("Nueva Database").Cells(i, 3).Value
            G = G + 1
        Else
            If (Sheets("Nueva Database").Cells(i, 3).Value = Sheets("NuevaDatabase").Cells(i - 1, 3).Value) Then
                'Column change in Matriz_FI
                Matriz_FI(J, G) = Sheets("Nueva Database").Cells(i, 11).Value
                G = G + 1
                MsgBox ("Same")
            Else
                'Row change in Matriz_FI
                J = J + 1
                Fecha(J) = Sheets("Nueva Database").Cells(i, 3)
                G = 0
                Matriz_FI(J, G) = Sheets("Nueva Database").Cells(i, 11).Value
                MsgBox ("Different")
            End If
        End If
    Next
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...