Общий столбец Excel VBA в двумерном массиве Ubound - PullRequest
0 голосов
/ 30 апреля 2018

Я хотел бы суммировать все данные в столбце двумерного массива

Мой код ниже не работает, код циклически перебирает содержимое двумерного массива, и как только столбец становится равным «Net Amount Local», я хотел бы приостановить и суммировать все значения в этом столбце (измерение массива)

Sub Evaluate_PositionV()

Dim aMapRow As Integer, aMapCol As Integer
Dim Ttraded As Double

Ttraded = 0

For aMapRow = LBound(arrayTraded, 1) To UBound(arrayTraded, 1)
        For aMapCol = LBound(arrayTraded, 2) To UBound(arrayTraded, 2)
            Debug.Print arrayTraded(aMapRow, aMapCol)
                If arrayTraded(aMapRow, aMapCol) = "Net Amount Local" Then
                    for each i in UBound(arrayTraded, 1)

                            aMapRow = aMapRow + 1
                            Ttraded = Ttraded + arrayTraded(aMapRow, aMapCol)
                End If
    Next aMapCol
Next aMapRow

End Sub

1 Ответ

0 голосов
/ 30 апреля 2018

Это должно выглядеть так (я не могу проверить это, так как у меня нет ваших данных):

Sub Evaluate_PositionV()
    Dim aMapRow As Integer, aMapCol As Integer
    Dim Ttraded As Double

    Ttraded = 0
    For aMapRow = LBound(arrayTraded, 1) To UBound(arrayTraded, 1)
        For aMapCol = LBound(arrayTraded, 2) To UBound(arrayTraded, 2)
            Debug.Print arrayTraded(aMapRow, aMapCol)
            If arrayTraded(aMapRow, aMapCol) = "Net Amount Local" Then
                For i = 1 To UBound(arrayTraded, 1)
                    Ttraded = Ttraded + arrayTraded(i, aMapCol)
                Next i
            End If
        Next aMapCol
    Next aMapRow
End Sub
...