Funcion Find...

3 envíos / 0 nuevos
Último envío
Jose Luis Casla...
Imagen de Jose Luis Casla Araiz
Offline
última acción: Hace 1 mes 1 semana
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntos
alta: 11/05/2012 - 15:15
Puntos: 1760
Funcion Find...

Hola:

Tengo la columna C de una Hoja Excel rellenada con Apellidos.

El siguiente codigo incluido en una macro, me "busca" la cadena que escribo con el InputBox.

Por ejemplo "Zabala"

Nombre = Application.InputBox("Escribe el apellido a buscar")

    Columns("C:C").Select

    Selection.Find(What:=cNombre).Activate

La funcion Find encuentra la cadena "Zabala" solicitada pero la encuentra no solo si esta al comienzo del apellido, sino tambien si está "conenida" en el mismo, como en este caso puede ser, "Aguirrezabala".

Quisiera saber si se puede modificar algo, para conseguir que solo busque en los comienzos de los apellidos... no "contenido" en los apellidos...

Saludos cordiales.

José Luis

 


 

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 4 días 2 horas
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11085
Buscar

Puedes buscar el inicio de la cadena, en vez de cualquier parte con las siguientes opciones:

busca Zabala*, el asterisco representa cualquier número de caracteres a continuación de Zabala

Coincidir con el contenido de toda la celda, así buscará celdas que contengan Zabala*,

cumplirán Zabala, también Zabala Pérez, pero Aguirrezabala no cumple, porque tiene algo delante de Zabala.

Buscar en Excel por inicio de la cadena

y con una macro, esta opción de coincidir todo el contenido de la celda lo controla el argumento LookAt

Así que podrías modificar tu código con algo como esto:

Selection.Find(What:=cNombre & "*", LookAt:=xlWhole).Activate

 

------
Ya sé Excel, pero necesito más.

Jose Luis Casla...
Imagen de Jose Luis Casla Araiz
Offline
última acción: Hace 1 mes 1 semana
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntos
alta: 11/05/2012 - 15:15
Puntos: 1760
Gracias Paco... por la

Gracias Paco... por la explicacion (genial) y por la modificacion puntual en la macro.

Como te dije en otra ocasion: da gusto tener dudas... por la satisfaccion de encontrar estas ayudas...

Saludos cordiales

José Luis