2 en una: cargar Listview y cargar tabla vacía en una BD en Access
Muy buenas, estoy realizando un proyecto te quería consultar 2 cosas por un lado
cargar un listview con una consulta SQL acá te pongo el código
Private Sub cmdBuscar_Click() Dim SQL As String Dim lista As ListItem Dim acc As Recordset SQL = "SELECT TblStock.Descripcion, TblStock.Año, TblStock.Categoria, TblStock.Modelo, TblStock.Precio From TblStock WHERE TblStock.Categoria='Neumaticos'" Set acc = DB.OpenRecordset(SQL, dbOpenDynaset) While Not acc.EOF With ListView1 Set lista = .ListItems.Add(, , acc!Descripcion) lista.Tag = (acc!Descripcion) lista.SubItems(1) = (acc!Categoria) lista.SubItems(2) = (acc!Modelo) lista.SubItems(3) = (acc!Precio) acc.MoveNext End With Wend End Sub
el problema es el siguiente al ejecutar dicha acción me tira el siguiente error
"Error '13' en tiempo de ejecución, No Coinciden los tipos"
en la siguiente linea
Set lista = .ListItems.Add(, , acc!Descripcion)
lo curioso de todo esto es que se ve claramente como carga el primer item de la lista, pero no los subitems.
probé de todo incluso copie y pegue códigos de otros programas de como usar el listview y como cargarlo y funcionan perfectamente pero mi código en especial no funciona.
La siguiente pregunta es mas fácil, estoy intentando cargar una tabla vacía de una BD en access pero me da el siguiente error
"Error '3021' en tiempo de ejecución, no hay ningún registro activo"
el código es el siguiente
Private Sub cmdCargar_Click() Dim num As Integer Dim rec As Recordset Set rec = DB.OpenRecordset("tblStock", dbOpenTable) rec.MoveLast num = rec!idArticulo rec.Index = "iArticulo" rec.Seek "=", num If Not (rec.NoMatch) Then rec.AddNew rec!idArticulo = num + 1 rec!Descripcion = txtDescripcion rec!Modelo = txtModelo rec!Marca = txtMarca rec!Tipo = txtTipo rec!Cantidad = txtCantidad rec.Update rec.Close End If End Sub
el error donde marca es en
rec.MoveLast
una aclaracion acá es que si la tabla ya tiene aunquesea 1 registro cargado el código funciona a la perfeccion.
otros datos a tener en cuenta:
*Estoy Usando DAO
*La BD se abre en otro formulario que siempre queda activo
*algunas variables relacionadas con la conexion a la BD estan en un Modulo.
Saludos y gracias por una pronta respuesta.
Walter.-