T'as tout bon casy..
Donc pour résumer, les mots clés sum(x) et group by ne font pas tout, mais mache une partie du travail..
Procédure utilisée qui marche pour ceux qui repasserait par là :
-écriture des données dans la base
-requete utilisant 'sum et group by' dans un dataset
-vider la base
-ecriture de chaque ligne du dataset 'groupé' avec affectation de l'id
ctrl + v (attention y'a des mots allemands qui peuvent piquer les yeux mais l'idée est là) :
Dim str As String = "Select artikelnr, parttype, footprint, bez, bez2, bez3, abmess, matspez, sum(menge) from sigma Group By artikelnr, parttype, footprint, bez, bez2, bez3, abmess, matspez"
Dim dastr As New OleDbDataAdapter(str, OleDbConnection4)
Dim dst As New DataSet()
Dim ff, gg As Integer
gg = dastr.Fill(dst)
Dim dsk As String = "select sigma.* from sigma"
Dim dak As New OleDbDataAdapter(dsk, OleDbConnection4)
Dim dk As New DataSet()
dak.Fill(dk)
dk.Clear()
Dim ock As OleDbCommandBuilder = New OleDbCommandBuilder(dak)
dak.UpdateCommand = ock.GetUpdateCommand
dak.Update(dk)
For ff = 0 To gg - 1
Dim dr As DataRow = dk.Tables(0).NewRow
dr("id") = ff + 1
dr("artikelnr") = dst.Tables(0).Rows(ff)("artikelnr")
dr("parttype") = dst.Tables(0).Rows(ff)("parttype")
dr("footprint") = dst.Tables(0).Rows(ff)("footprint")
dr("bez") = dst.Tables(0).Rows(ff)("bez")
dr("bez2") = dst.Tables(0).Rows(ff)("bez2")
dr("bez3") = dst.Tables(0).Rows(ff)("bez3")
dr("menge") = dst.Tables(0).Rows(ff)("expr1008")
dr("abmess") = dst.Tables(0).Rows(ff)("abmess")
dr("matspez") = dst.Tables(0).Rows(ff)("matspez")
dk.Tables(0).Rows.Add(dr)
Next
Dim ocxi As OleDbCommandBuilder = New OleDbCommandBuilder(dak)
dak.InsertCommand = ocxi.GetInsertCommand
dak.Update(dk)
.Maytheforcebewithyou.Maxime.