2015-08-29 2 views
1

Это мой исходный код,Datatable и DataGridView расчет клеток

Private Sub Create_vTable() 
    Dim i,j As Integer 
    Dim q, PV, YP, MW, id As Double 

    q = TextBox1.Text 
    MW = TextBox2.Text 
    PV = TextBox3.Text 
    YP = TextBox4.Text 

    vTable = New DataTable 
    vTable.Columns.Add("Name", GetType(String)) 
    vTable.Columns.Add("Len", GetType(Double)) 
    vTable.Columns.Add("ID", GetType(Double)) 
    vTable.Columns.Add("OD", GetType(Double)) 
    vTable.Columns.Add("Totlen", GetType(Double)) 
    vTable.Columns.Add("Vel", GetType(Double)) 

    id = DGV6.CurrentRow.Cells(2).Value 

    For i = 0 To DGV6.Rows.Count - 2 
     vRow = vTable.NewRow 
     vRow.Item(5) = (q/(2.448 * (id)^2)) 
     For j = 0 To DGV6.Columns.Count - 1 
      vRow.Item(j) = DGV.Rows(i).Cells(j).Value.ToString 

     Next 
     vTable.Rows.Add(vRow) 
    Next 

    Catch ex As Exception 

    End Try 

End Sub 

У меня есть данные в DGV6 и текстовое поле, я хотел бы сделать расчет по DataTable пункту 5 каждой ячейки, но после того, как тест, результат показывает только один вычисленная для целые столбцы не следуют за каждой ячейкой, любой может помочь, заранее спасибо

ответ

0

Вы получаете только значение id один раз из одной строки в DataGridView. Вы должны получить это значение в каждой итерации цикла:

For i = 0 To DGV6.Rows.Count - 2 
    vRow = vTable.NewRow 
    id = DGV.Rows(i).Cells(2).Value 
    vRow.Item(5) = (q/(2.448 * (id)^2)) 
    For j = 0 To DGV6.Columns.Count - 1 
     vRow.Item(j) = DGV.Rows(i).Cells(j).Value.ToString 

    Next 
    vTable.Rows.Add(vRow) 
Next 
+0

таблица результатов еще так же, как ранее, мне нужно расчета данных из каждой строки в Колум идентификатор, так как значение отличается – Dargombes

+0

Да вы ¨R правильно, я не реализована переменная i по строкам, спасибо много .... – Dargombes

Смежные вопросы