Ayuda con formulario

Hola, favor ayúdame con lo siguiente:
Formulario con 2 textbox, 1 que captura los caracteres magnéticos de un cheque, el 2 toma los primeros 7 caracteres del textbox1, luego los datos del textbox2 deben ser buscados en una lista y colocar una "a" en la tercera columna donde se encuebtra el dato. Espero que no sea mucho abuso. Gracias.

1 respuesta

Respuesta
1
Entiendo, por respuestas anteriores, que ya sabes como ingresar un código de VBA en un módulo.
Para lo que solicitas (que no es un abuso), ingresa el siguiente en el panel de códigos del formulario donde están los controles mencionados:
Sub BuscaYmarca()
'1.- Ingresa rango de búsqueda:
BuscarEn = "B4:B200"
'2.- Marca a ingresar:
LaMarca = "a"
'3.-Numero de columna *de la base* donde deja la marca
EnCol = 3
'4.- Selecciona una de estas líneas
CodBusq = Val(Textbox2. Value) 'usa esta si el dato en la base es numérico y borra la siguiente
CodBusq = Textbox2. Value ' o 'usa esta si el dato en la base es alfanumerico y borra la anterior
With ActiveSheet.Range(BuscarEn)
Set SiEsta = .Find(CodBusc, LookIn:=xlValues)
If Not SiEsta Is Nothing Then
Primercaso = SiEsta.Address
Do
SiEsta.Offset(0, EnCol - 1) = LaMarca
Set SiEsta = .FindNext(SiEsta)
Loop While Not SiEsta Is Nothing And SiEsta.Address <> Primercaso
Else
MsgBox "El código " & CodBusq & Chr(10) & "no fué encontrado en la base", vbExclamation, "CODIGO INEXISTENTE"
End If
Set SiEsta = Nothing
End With
End Sub
Como verás esta macro está bastante parametrizada.
Al inicio de la misma puedes indicarle en qué rango de la hoja activa debe efectuar la búsqueda, cuál es el carácter a colocar en la base si es encontrado.
También puedes elegir la columna donde debe ingresar tal carácter y, finalmente, puedes seleccionar una de las dos líneas que proporciono según el código a buscar en la base esté como número o caracteres alfanuméricos.
La macro prevé marcar todos los casos coincidentes que encuentre en la base. Desde luego, si sólo estuviese una vez marcará sólo ese.
Si eventualemnte no encontrara ese código btendrás un mensaje mencionándolo.
Desde luego, puedes colocar este código dentro de los comandos de un botón o hacer una llamado a la macro desde tal botón.
Por ejemplo:
Private Sub CommandButton1_Click()
BuscaYmarca
End Sub
Espero que te sea útil.
Un abrazo!
Fernando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas