1

私はVB.Netを使用しており、データベースには「Personne」と「PersonneCopy」の2つのテーブルが含まれています(Personneと同じスキーマ[4列= N°、FirstName、LastName、B_Day])

最初のテーブルを Datagridview にロードします。これで問題ありません。コードは次のとおりです。

Dim Connection As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source= .\BD.mdb")
Dim SqlRequete As String = "Select * From Personne"
Dim Adapter As New OleDbDataAdapter(SqlRequete, Connection)
Dim DataSet As New DataSet
Adapter.Fill(DataSet, "Tb1")
Dim DataTable As New DataTable
DataTable = DataSet.Tables("Tb1")
DataGridView1.DataSource = DataTable

DataGridView1 から選択した行全体をテーブル "PersonneCopy" に追加する方法はありますか?

ちなみに、このコードを他の Datagridview で試して、選択した行のインデックスを取得しましたが、うまくいきました。

Dim Index As Integer = DataGridView1.Item(0, DataGridView1.CurrentRow.Index).Value
Dim SqlRequete As String = "Select * From Personne where N°=" & Index.ToString
Dim Adapter As New OleDbDataAdapter(SqlRequete, Connection)
Dim Ds As New DataSet
Adapter.Fill(Ds, "Tb")
DataGridView2.DataSource = Ds.Tables(0)
4

1 に答える 1

1

このようにしてみてください

Dim drCopy as DataRow
Dim tbCopy as Datatable 

tbCopy = .... 'PersonneCopy table

drCopy=tbCopy.NewRow()
For i as integer=0 to drCopy.columns.count-1
  drCopy(i)=Ds.Tables(0).rows(0).items(i)   '---------> or you can change rows(0)
Next
tbCopy.Rows.Add(drCopy)
于 2013-05-27T07:26:39.763 に答える