Hola ayudame por favor con este formulario de excel

Ayuda con un formulario
Tengo este código en un formulario de excel y lo que quiero que haga es que me busque de la columna "A" de excel el numero de unidad de una camioneta.
Pero quiero que cumpla las siguientes condiciones:
1--Que me encuentre el ultimo dato ingresado (ya sea por la fecha o porque es la ultima de la lista)
2 en caso de no encontrar ningún dato se dirija ala celda A2.
Private Sub TextBox1_Change()
On Error GoTo noencontro
Cells.Find(What:=TextBox1, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True) _
.Activate
noencontro: Range("A2").Select
End Sub
Lo malo es que se brinca el código y solo se queda en A2, y si lo quito y coloco una unidad me la encuentra, pero no el ultimo dato (depende de donde este el cursor dado que tengo muchas camionetas y cada una con varias cargas de diferentes fechas)y si no encuentra el dato que ingreso pues se queda donde sea y ahí me ingresa los datos (en columnas diferentes)
me habian ayudado con esto:
Re: go to tengo dudas ???
Hola, falta el Resume Next, aqui va un ejemplo:
Sub InicializarMatriz(Var1, Var2, Var3, Var4)
On Error GoTo ControlErrores
. . .
Exit Sub
ControlErrores:
. . .
Resume Next
End Sub
Si quieres pásame el archivo a [email protected]
Saludos
Pero ya no me quiso ayudar!
¿Qué hago?
Si necesitan les paso el archivo por mail para que me entiendan

1 Respuesta

Respuesta
1
La primer rutina ajustada quedaría así:
Private Sub TextBox1_Change()
On Error GoTo noencontro
Cells.Find(What:=TextBox1, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True) _
.Activate
Exit sub
noencontro: Range("A2").Select
Resume next
End Sub
Para encontrar el último dato ingresado en una lista, esta es la instrucción:
filalibre = Range("A1"). End(xlDown). Offset(1, 0). Row
la variable filalibre guarda el nro. de la primer celda vacía en la col A, por lo que para encontrar el último valor ingresado en esa col harás, por ejemplo:
Textbox2 = cells(filalibre-1, 1) ' y te devolverá el valor de la última celda en A
Si esto no te ayuda, podes enviarme tu archivo a mi correo con más explicaciones o un ejemplo de lo que necesitas obtener.
Saludos
Elsa
*** Más de 400Macros explicadas en español, desde:

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas