Как вычислить сумму значений в столбце в datagridview в vb.net

#vb.net

#vb.net

Вопрос:

 Dim Sum As Integer = 0
For i = 1 To DGV.Rows.Count   1
    Sum  = DGV.Rows(i).Cells(3).Value
Next
Label7.Text = Sum.ToString()
 

Результат:

Смотрите результат здесь

Комментарии:

1. Массивы начинаются с индекса 0, а не с 1. Посмотрите, как вы индексируете столбец. Вы передаете индекс 3 для ссылки на четвертый столбец. Почему вы начинаете с индекса 1, чтобы ссылаться на массив строк?

2. Обратите внимание, что у вас также есть a NewRow в вашем DGV. Примите это во внимание при циклическом Rows просмотре коллекции.

3. Используете ли вы базовую коллекцию в datagridview? Если это так, я бы рекомендовал использовать его, а не DGV.

4. Что такое .DataSource вашего DataGridView?

Ответ №1:

Это хорошо работает для меня. Просматриваем каждую строку и исключаем новые строки.

 Dim SResult As Integer = 0
For Each SF As DataGridViewRow In DGV.Rows
    If SF.IsNewRow = False Then
        SResult  = SF.Cells(3).Value
    End If
Next
Label7.Text = SResult