Hacer una búsqueda en visual Basic enlasado con una BD de access

Iniciado por mandracke, 24 Junio 2007, 20:58 PM

0 Miembros y 2 Visitantes están viendo este tema.

mandracke

Pues bien esa es la cuestion necesito hacer una busqueda, mi programa esta enlasado a un abase de datos, y lo que quiero hayr es que si pordecir la matricula o CURP, ya existe pues que envie un mesaje que ya esta registrada.

Por lo pronto lo que me interesa es hacer la busqueda ya llevo rato tratando de hacerlo pero nadamas no encuentro la solucion, este es lo que llevo del codigo para la accion que quiero realisar.


Private Sub cmdconsultar1_Click()
InputBox ("Proporcione la CUPR")
Data1.Recordset.MoveFirst
Do

Data1.Recordset.MoveNext
Loop Until Data1.Recordset.EOF



una ves ya lo habia echo y se que se puede es de una forma muy sencilla, pero lamentablemente, deje de oprogramar un tiempo y se me ha olvidado y la carpeta donde tenia eso se trono el discoduro  y pues se perdio todo.

Espero me ayuden un saludo cordial

mandracke

Perdonen el post doble, pero es que ya he encontrado la solucion, a  lo de la busqueda y espero que dejen este post fjo o algo asi, ya que yo en lo personal busque y busque en demaciados foros y no hay un ejemplo de como hacerlo, asi que les dejo como lo he solucionado.


Private Sub cmdconsultar1_Click()

buscar = InputBox("proporcione la curp")
Data1.Recordset.MoveFirst
Do
If buscar = txtcurp1.Text Then
Exit Sub
End If

If buscar <> txtcurp1.Text Then
cmdconsultar1.Enabled = True
cmdconsultar1.Visible = True
End If

Data1.Recordset.MoveNext
Loop Until Data1.Recordset.EOF



End Sub

Hans el Topo

#2
cosas más raras haces xD



Private Sub cmdconsultar1_Click()

buscar = InputBox("proporcione la curp")
Data1.Recordset.findfirst "curp='" & buscar & "'"
'pedimos el dato hasta que no sea repe
while data1.recordset.nomatch
    msgbox("el curp ya existe")
    buscar = InputBox("proporcione la curp")
   Data1.Recordset.findfirst "curp='" & buscar & "'"
wend
'ya tienes el dato correcto

End Sub


también puedes así...


Private Sub cmdconsultar1_Click()

buscar = InputBox("proporcione la curp")
Data1.Recordsource="select blablablbal from tablablalbabal where curp='" & buscar & "'"
data1.refresh
'pedimos el dato hasta que no sea repe
while not data1.eof
    msgbox("el curp ya existe")
    buscar = InputBox("proporcione la curp")
    Data1.Recordsource="select blablablbal from tablablalbabal where curp='" &    buscar & "'"
   data1.refresh
wend
'ya tienes el dato correcto

End Sub


P.D. por si no ta quedao claro te agrego la ayuda

Citar
FindFirst, FindLast, FindNext, FindPrevious (Métodos)

Buscan el primero, último, siguiente o anterior registro de un objeto Recordset de tipo Dynaset o Snapshot que cumpla el criterio especificado y lo convierte en el registro activo (sólo espacios de trabajo Microsoft Jet).

Sintaxis

recordset.{FindFirst | FindLast | FindNext | FindPrevious} criterios

Los métodos Find utilizan los siguientes argumentos.

Argumento   Descripción
recordset   Una variable de objeto que representa un objeto Recordset existente de tipo Dynaset o Snapshot.
criterios   Un tipo de datos  String utilizado para localizar el registro. Es como la cláusula WHERE en una instrucción SQL, pero sin la palabra WHERE.
Comentarios

Si desea incluir todos los registros en la búsqueda - no sólo aquellos que cumplan un condición específica - utilice los métodos Move para pasar de un registro a otro. Para localizar un registro en un Recordset de tipo Table, utilice el método Seek.
Si no se localiza un registro que coincida con los criterios, el puntero del registro activo será indeterminado y la propiedad NoMatch será True. Si recordset contiene más de un registro que satisfaga el criterio, FindFirst localizará la primera aparición, FindNext localizará la segunda, etc.

Cada método Find comienza a buscar desde la posición y en la dirección especificadas en la siguiente tabla:

Métodos Find    
Comienzo   Dirección de búsqueda
FindFirst   Comienzo del recordset   Fin del recordset
FindLast   Fin del recordset   Comienzo del recordset
FindNext   Registro activo   Fin del recordset
FindPrevious   Registro activo   Comienzo del recordset

Copyright (c) 1996 Microsoft Corporation
 

Red Mx

Desarrollar Malware Es Causa De Cancer...