Cita:
Iniciado por Avellaneda
Si no encuentas tu solución es porque no haces caso de los consejos que te dan y no miras el código que te ponen.
Siguiendo con tus datos, suponemos que
dsDetalleFactura es un control Data de ADO (
Adodc) y
grilla es un control
MSFlexGrid (si no es así, nos lo indicas).
Pues bien, copia el siguiente código (modifica [
LaTabla] con el nombre de tu tabla)
Código:
Private Sub carga_datos()
Dim i As Long
dsDetalleFactura.RecordSource = "SELECT * FROM [LaTabla] WHERE numfactura LIKE'%" & txtPresupuesto.Text & "%'"
dsDetalleFactura.Refresh
With grilla
.Rows = dsDetalleFactura.Recordset.RecordCount
.Cols = dsDetalleFactura.Recordset.Fields.Count
i = 1
Do Until dsDetalleFactura.Recordset.EOF
.TextMatrix(i, 0) = dsDetalleFactura.Recordset!cantidad
.TextMatrix(i, 1) = dsDetalleFactura.Recordset!codigoprod
.TextMatrix(i, 2) = dsDetalleFactura.Recordset!precio
.TextMatrix(i, 3) = dsDetalleFactura.Recordset!Subtotal
i = i + 1
If i = .Rows Then Exit Do
dsDetalleFactura.Recordset.MoveNext
Loop
End With
End Sub
Espero que así te funcione y si te dá error, nos indiques el tipo de error y en la línea de código donde lo dá.

Me da el error " 381 en tiempo de ejecucion" dice " NO EXISTE EL SUBINDICE en EL INTERVALO"
Borrando la linea .Rows = dsDetalleFactura.Recordset.RecordCount, no me da error pero carga solo un registro
Prove poniendo un For antes del DO UNTIL for i = 1 to dsDetalleFactura.Recordset.RecordCount pero tampoco
PD : agradeceria urgente infoemacion gracias