Hola Todos,
Desde ya gracias por su ayuda, ahora les platico.
Hice un programa de busqueda en una base de datos. Me corría super bien, si
no le ingresaba la palabra exacta tal como estaba en la basde datos decía que
no existía eso estaba perfecto. Ahora no sé que le moví que con que le
ingrese una letra me dice que si se encontró y obvio me saca el primer
articulo que encuentre que tiene esa letra. Les pongo mi código para ver si
me pueden decir cual es mi error, espero me puedan ayudar por que ya ese me
quemó el cerebro GRAX. Besos
La bruja - May
Private Sub CommandButton1_Click()
'Definición de variables, fila se usa para guardar en que fila se encuentra
y varbus es la variable a buscar
Dim fila As Long, varbus As String
'Manda llamar al procedimiento BuscaRegistro con la variable fila
BuscaRegistro fila, varbus
'Cancela la búsqueda definitivamente, se acaba el programa
If varbus = "" Then Exit Sub
'Si no encontró la variable le avisa al usuario
If fila = 0 Then
MsgBox "La búsqueda no arrojó ningún resultado", vbInformation,
"BÚSQUEDA SIN RESULTADOS"
'Si desea buscar de nuevo, reinicia sólo el program si no se acaba
Do While MsgBox("¿Desea intentarlo de nuevo?", vbRetryCancel +
vbQuestion, "BUSQUEDA") = vbRetry
BuscaRegistro fila, varbus
MsgBox "La búsqueda no arrojó ningún resultado", vbCritical,
"ERROR"
Loop
MsgBox "Término de la búsqueda", vbExclamation, "FIN"
'Si lo encuentra le avisa al usuarion que la búsqueda fue exitosa y le da
los resultados
Else
MsgBox "Tu búsqueda fue exitosa", vbExclamation, "BÚSQUEDA EXITOSA"
MsgBox "El Equipo secador " & Worksheets("GRAL").Cells(fila, 3) & vbCr & _
"seca el material " & Worksheets("GRAL").Cells(fila, 1) & vbCr & _
" con código " & Worksheets("GRAL").Cells(fila, 2) & vbCr, vbOKOnly,
"RESULTADOS"""
Worksheets("BÚSQUEDA").Cells(10, 2) = "Materia Prima"
Worksheets("BÚSQUEDA").Cells(10, 3) = "Código"
Worksheets("BÚSQUEDA").Cells(10, 4) = "Secador"
Worksheets("BÚSQUEDA").Cells(11, 2) = Worksheets("GRAL").Cells(fila, 1)
Worksheets("BÚSQUEDA").Cells(11, 3) = Worksheets("GRAL").Cells(fila, 2)
Worksheets("BÚSQUEDA").Cells(11, 4) = Worksheets("GRAL").Cells(fila, 3)
End If
End Sub
'Procedimiento de búsuqeda
Sub BuscaRegistro(fila As Long, varbus As String)
On Error Resume Next
'Le solicita al usuario la variable a buscar
varbus = UCase(InputBox("Introduce el nombre de material o código que deseas
buscar", "BUSCAR"))
'Si el usuario cancela o deja en blanco en vez de introducir algo, le aviso
lo que sucedió
If varbus = "" Then
MsgBox "Se canceló o no se introdujo ningún parámetro a buscar",
vbCritical, "ERROR"
'Si desea buscar de nuevo, reinicia sólo el program si no se acaba
Do While MsgBox("¿Desea iniciar la búsqueda o cancelarla
definitivamente?", vbQuestion + vbOKCancel, "BÚSQUEDA") = vbOK
BuscaRegistro fila, varbus
Loop
Exit Sub
'Busca la variable
Else
'busca en columna A.
fila = Worksheets("GRAL").Range("A2:B1000").Find(varbus).Row
End If
End Sub
Leer las respuestas