yo lo hago algo asi....
For i = 1 To ListView1.ListItems.Count
If ild = 1 Then
Rst_Data.Open "select * from contransaccion", cn, adOpenStatic, adLockOptimistic
Rst_Data.AddNew
Rst_Data!numpartida = NPARTIDA
Rst_Data!ctacontable = ListView1.ListItems(i)
Rst_Data!concepto = ListView1.ListItems(i).SubItems(2)
Formato = "#######.00"
If ListView1.ListItems(i).SubItems(3) <> 0 Then
Rst_Data!tip_mov = "DEUDOR"
valor = Format(ListView1.ListItems(i).SubItems(3), Formato)
Rst_Data!monto = valor
Else
Rst_Data!tip_mov = "ACREEDOR"
valor = Format(ListView1.ListItems(i).SubItems(4), Formato)
Rst_Data!monto = valor
End If
Rst_Data!fecha = DTPicker1
Rst_Data!tip_par = "DIARIO"
Rst_Data!estado = "NO AFECTA"
Rst_Data!idmes = idm
Rst_Data.Update
ElseIf ild = 2 Then
Rst_Data.Open "select * from contransaccion", cn, adOpenStatic, adLockOptimistic
Rst_Data.AddNew
Rst_Data!numpartida = NPARTIDA
Rst_Data!ctacontable = ListView1.ListItems(i)
Rst_Data!concepto = ListView1.ListItems(i).SubItems(2)
Formato = "#######.00"
If ListView1.ListItems(i).SubItems(3) <> 0 Then
Rst_Data!tip_mov = "DEUDOR"
valor = Format(ListView1.ListItems(i).SubItems(3), Formato)
Rst_Data!monto = valor
Else
Rst_Data!tip_mov = "ACREEDOR"
valor = Format(ListView1.ListItems(i).SubItems(4), Formato)
Rst_Data!monto = valor
End If
Rst_Data!fecha = DTPicker1
Rst_Data!tip_par = "INGRESO"
Rst_Data!estado = "NO AFECTA"
Rst_Data!idmes = idm
Rst_Data.Update
ElseIf ild = 3 Then
Rst_Data.Open "select * from contransaccion", cn, adOpenStatic, adLockOptimistic
Rst_Data.AddNew
Rst_Data!numpartida = NPARTIDA
Rst_Data!ctacontable = ListView1.ListItems(i)
Rst_Data!concepto = ListView1.ListItems(i).SubItems(2)
Formato = "#######.00"
If ListView1.ListItems(i).SubItems(3) <> 0 Then
Rst_Data!tip_mov = "DEUDOR"
valor = Format(ListView1.ListItems(i).SubItems(3), Formato)
Rst_Data!monto = valor
Else
Rst_Data!tip_mov = "ACREEDOR"
valor = Format(ListView1.ListItems(i).SubItems(4), Formato)
Rst_Data!monto = valor
End If
Rst_Data!fecha = DTPicker1
Rst_Data!tip_par = "EGRESO"
Rst_Data!estado = "NO AFECTA"
Rst_Data!idmes = idm
Rst_Data.Update
End If
Rst_Data.Close
Next i
solo recorro un listview donde tengo todos los datos cargados para despues actualizar la tabla....
con lo del numero de la partida....por que no solo haces una consulta...llamas a la tabla le decis que se mueva al ultimo registro y le sumas uno...y alli tenes el siguiente numero que va....aunque la consulta quizas sea mas complicada si llevas periodos contables y meses para cada periodo que seria lo ideal....