Hola Gente del Foro:
Espero esten todos bien! Tengo el siguiente código que lo que hace es buscar
un número que se ingresa en un textbox y que muestra ciertos datos en
algunos label:
Private Sub TextBox1_Change()
Dim fila As Integer
On Error Resume Next
fila = ActiveSheet.Range("B:B").Find(TextBox1, , LookIn:=xlValues,
LookAt:=xlWhole).Row
Label7 = Format(ActiveSheet.Cells(fila, 6).Value, "#,#00.00")
Label5.Caption = Format(ActiveSheet.Cells(fila, 5), "dd/mm/yyyy")
Label6 = ActiveSheet.Cells(fila, 3).Value
ActiveSheet.Range("A1") = fila
If ActiveSheet.Range("A1") = 0 Then
Label7 = ""
Label5 = ""
Label6 = ""
End If
End Sub
El código funciona perfecto. Pero en el caso de que exista más de un
registro con el mismo número siempre encuentra el primero, y lo que no se
como hacer es: como decirle al código que luego de ejecutar la secuencia, si
yo veo que los datos que se ven en el label no corresponden con lo que yo
busco, apretando una tecla (por ejemplo enter) me busque el siguiente
registro coincidente con el número en el textbox y muestre los datos de ese.
Ejemplo:
Estos son los registros en la hoja actual:
A B C D
E F G
09/11/06 103 CARGAS SOCIALES 34746 09/11/06
6,553.89 NO EN
09/11/06 104 CARGAS SOCIALES 34750 09/11/06 16,500.00
NO EN
16/11/06 104 XXX S.R.L. 35509 16/11/06
1,500.00 NO EN
17/11/06 140 XXX S.R.L. 35511 17/11/06
2,000.00 NO EN
18/08/06 538 XXX S.R.L. 29997 18/08/06
2,500.00 NO EN
En el textbox yo ingreso "104"
Resultado con el código actual: muestra en el Label7 "16,500.00", en el
Label5 "09/11/2006", y en el Label6 "CARGAS SOCIALES"
Ahora lo que yo quiero es...
En el textbox yo ingreso "104"
Resultado: muestra en el Label7 "16,500.00", en el Label5 "09/11/2006", y en
el Label6 "CARGAS SOCIALES", al darme cuenta que no es el resultado que yo
busco aprieto la tecla enter (o alguna otra) y acto seguido muestra en el
Label7 "1,500.00", en el Label5 "16/11/2006", y en el Label6 "XXX S.R.L."
Pienso que debe tener que ver con algo de poner el atributo After:= en la
función Find, pero no se como escribirlo para que funcione (ya que lo
intente y no funciona).
Espero haberme explicado bien!
Saludos y desde ya muchas gracias!
Mariano
Leer las respuestas