Gracias a Gydba y al Guille
Ya estoy trabajando con ADO, gracias a Gydba y al Guille.
en un ejemplo del manual del Guille,llenando un LIstView, me da un error en al usar execute (Set tRs = cnn.Execute(sBuscar)).
Parece que algo no tengo claro, porque no lo pude arreglar yo solo.
Este es el ejemplo:
Private Sub cmdBuscar_Click()
' Mostrar los datos en el listview
Dim sBuscar As String
Dim tRs As Recordset
Dim tLi As ListItem
'
' Comprobar si tiene caracteres "no válidos" para ADO:
' NOTA: Replace es una función de VB6
sBuscar = Text2
sBuscar = Replace(sBuscar, "*", "%")
sBuscar = Replace(sBuscar, "?", "_")
'
Text2 = sBuscar
' Formar la cadena de la consulta:
' Se busca por el nombre del autor y se muestran clasificados por el nombre
sBuscar = "SELECT * FROM Authors WHERE Author LIKE '" & sBuscar & "' ORDER BY Author"
' Creamos un recordset del tipo "estático", el cual no es modificable
' para poder modificarlo, tendría que ser del tipo dbOpenDynamic
Set tRs = cnn.Execute(sBuscar)
' Comprobar que hay datos en el recordset
With tRs
' Si no hay datos...
If (.BOF And .EOF) Then
MsgBox "No se han encontrado los datos buscados"
Else
' Mostrar los datos hallados
ListView1.ListItems.Clear
.MoveFirst
Do While Not .EOF
Set tLi = ListView1.ListItems.Add(, , .Fields("Au_ID") & "")
tLi.SubItems(1) = .Fields("Author") & ""
tLi.SubItems(2) = .Fields("Year Born") & ""
.MoveNext
Loop
End If
End With
End Sub
en un ejemplo del manual del Guille,llenando un LIstView, me da un error en al usar execute (Set tRs = cnn.Execute(sBuscar)).
Parece que algo no tengo claro, porque no lo pude arreglar yo solo.
Este es el ejemplo:
Private Sub cmdBuscar_Click()
' Mostrar los datos en el listview
Dim sBuscar As String
Dim tRs As Recordset
Dim tLi As ListItem
'
' Comprobar si tiene caracteres "no válidos" para ADO:
' NOTA: Replace es una función de VB6
sBuscar = Text2
sBuscar = Replace(sBuscar, "*", "%")
sBuscar = Replace(sBuscar, "?", "_")
'
Text2 = sBuscar
' Formar la cadena de la consulta:
' Se busca por el nombre del autor y se muestran clasificados por el nombre
sBuscar = "SELECT * FROM Authors WHERE Author LIKE '" & sBuscar & "' ORDER BY Author"
' Creamos un recordset del tipo "estático", el cual no es modificable
' para poder modificarlo, tendría que ser del tipo dbOpenDynamic
Set tRs = cnn.Execute(sBuscar)
' Comprobar que hay datos en el recordset
With tRs
' Si no hay datos...
If (.BOF And .EOF) Then
MsgBox "No se han encontrado los datos buscados"
Else
' Mostrar los datos hallados
ListView1.ListItems.Clear
.MoveFirst
Do While Not .EOF
Set tLi = ListView1.ListItems.Add(, , .Fields("Au_ID") & "")
tLi.SubItems(1) = .Fields("Author") & ""
tLi.SubItems(2) = .Fields("Year Born") & ""
.MoveNext
Loop
End If
End With
End Sub
Respuesta de yodelmis
1