Combobox de excel en BD access
Nuevamente molestándolo con una pregunta, le detallo el problema :
Tengo una base de datos en access en una tabla llamada "Reg_Salidas" en la cual registro despachos a distintos locales, pero deseo modificar la información de la tabla desde excel para no abrir la base de datos.
Tengo el formulario en excel en la cual cargo en un combobox las facturas emitidas, este combobox se carga con información de access con el detalle de las facturas.
este es el codigo que utilizo para cargar el combobox
Private Sub UserForm_Activate() cnnProducto.Open "Provider=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=D:\Base Datos Tienda (2).MDB" 'conexion con ubiacion archivo 'rstProducto.Open "SELECT IdProducto, NombreProducto, PrecioUnidad, UnidadesEnExistencia FROM Productos", cnnProducto, adOpenKeyset, adLockOptimistic, adCmdText rstProducto.Open "SELECT factura,nombre FROM Reg_Salidas", cnnProducto, adOpenKeyset, adLockOptimistic ', adCmdText Do Until rstProducto.EOF '= False ComboBox1.AddItem rstProducto.Fields(0).Value rstProducto.MoveNext Loop cnnProducto.Close ListBox1.ColumnCount = 3 ListBox1.ColumnWidths = "40;130;50" End Sub
Pero al seleccionar el numero de guia para que muestre su detalle me sale error
Private Sub ComboBox1_Change() TextBox1.Text = ComboBox1.Text 'ChDir Application.ThisWorkbook.Path Dim Rst As New ADODB.Recordset Dim Consulta As String Dim i As Integer Dim x As Integer If cnnProducto.State = 0 Then With cnnProducto .Open "Provider=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=D:\Base Datos Tienda (2).MDB" End With End If Consulta = "SELECT Id,codigo, nombre, cantsalida FROM Reg_Salidas Where factura =" & TextBox1.Text 'Campo nombre solamente" 'Consulta = "SELECT Folio, Remision, Lote, Cantidad, Fecha FROM Asignacion Where Remision = textbox1.text" 'Campo nombre solamente" 'rstProducto.Open "SELECT factura,nombre FROM Reg_Salidas", cnnProducto, adOpenKeyset, adLockOptimistic ', adCmdText Rst.Open Consulta, cnnProducto, , , adCmdText Rst.MoveFirst Do While Not Rst.EOF '= False Me.ListBox1.AddItem Rst.Fields(0).Value Me.ListBox1.List(Me.ListBox1.ListCount - 1, 1) = Rst.Fields(1).Value 'Me.ListBox1.List(Me.ListBox1.ListCount - 1, 3) = Rst.Fields(8).Value Rst.MoveNext Loop Rst.Close Set Rst = Nothing cnnProducto.Close Set cnnProducto = Nothing
Me puede ayudar para al seleccionar la guía me salga el detalle de la factura y si modifico algún elemento de la factura al actualizar se modifique en la base de datos de access
Gracias por la atención prestada
Slds
Robert