Obtener los Numeros de Fila en una busqueda.

09/03/2009 - 10:59 por De_Corando. | Informe spam
Al grabar un MACRO al aplicar la funcion BUSCAR, le aplique un
USERFORM que contiene los
encabezados de una lista telefonica.
Al poner un texto o numero, en una celda (C3) y hacer click al boton
"BUSCAR", empieza la busqueda y me carga o muestra el USERFORM. Los
codigos de ese USERFORM, en cuanto a como poner los datos en el, ya lo
tengo arreglado, lo que me falta o necesito es obtener el Numero de la
fila o renglon donde esta posesionado el cursor o celda activa cuando
se esta realizando la busqueda, para obtener la informacion de la fila
y ser mostrada en la forma.
No deseo usar los AutoFiltros, por querer hacerlo mas personal.

El codigo usado y obtenido gravando la busqueda en MACRO es
Sub BUSCA()
Cells.Find(What:=Sheets("TELEFONOS").Range("C3"), After:=ActiveCell,
LookIn:=xlFormulas,
LookAt _:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext,
MatchCase:= _False,
SearchFormat:=False).Activate
Cells.FindNext(After:=ActiveCell).Activate
Cells.FindNext

y luego la informacion para pasar los datos al USERFORM.

Envio el ejemplo practico por si se pasa algun detalle.
Descargar de este enlace:

http://www.box.net/shared/bqa6c2cx1f

Se que puedo aprender mas.

De antemano agradezco sus atenciones.
Corando.

Preguntas similare

Leer las respuestas

#1 Pedro F. Pardo
09/03/2009 - 12:18 | Informe spam
On Mar 9, 9:59 am, "De_Corando." wrote:
Al grabar un MACRO al aplicar la funcion BUSCAR, le aplique un
USERFORM que contiene los
encabezados de una lista telefonica.
Al poner un texto o numero, en una celda (C3) y hacer click al boton
"BUSCAR", empieza la busqueda y me carga o muestra el USERFORM. Los
codigos de ese USERFORM, en cuanto a como poner los datos en el, ya lo
tengo arreglado, lo que me falta o necesito es obtener el Numero de la
fila o renglon donde esta posesionado el cursor o celda activa cuando
se esta realizando la busqueda, para obtener la informacion de la fila
y ser mostrada en la forma.
No deseo usar los AutoFiltros, por querer hacerlo mas personal.

El codigo usado y obtenido gravando la  busqueda en MACRO es
Sub BUSCA()
Cells.Find(What:=Sheets("TELEFONOS").Range("C3"), After:=ActiveCell,
LookIn:=xlFormulas,
LookAt _:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext,
MatchCase:= _False,
SearchFormat:=False).Activate
Cells.FindNext(After:=ActiveCell).Activate
Cells.FindNext

y luego la informacion para pasar los datos al USERFORM.

Envio el ejemplo practico por si se pasa algun detalle.
Descargar de este enlace:

http://www.box.net/shared/bqa6c2cx1f

Se que puedo aprender mas.

De antemano agradezco sus atenciones.
Corando.



Perdón, no he entendido muy bien el propósito, pero si lo que
necesitas es
el número de la fila donde está la celda activa, es tan sencillo como
esto:

NUM = ActiveCell.Row
Respuesta Responder a este mensaje
#2 De_Corando.
09/03/2009 - 22:00 | Informe spam
Gracias Pedro !!

Francamente ya habia usado ese codigo, pero desconozco el porque
fallo, no daba ningun resultado, algun mal detalle por alli, en fin,
lo importante es que ya quedo funcionando bien.
Mil gracias.
Ahora cambie el codigo anterior por este:

Dim rngC As Range
Set rngC = ActiveSheet.Cells.Find( _
What:=Worksheets("TELEFONOS").Range("C3"), _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlPart, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not rngC Is Nothing Then rngC.Offset(0, 2).Select

Set rngC = Nothing.

ya queda actualizado el archivo del enlace anterior
Repito: mil gracias por su cooperacion.
Respuesta Responder a este mensaje
#3 De_Corando.
10/03/2009 - 00:35 | Informe spam
Hola foristas !!
Revisando el codigo anterior, funciona muy bien buscando textos, pero
al buscar numeros no funciona bien, solo me da un resultado y se
detiene la busqueda.
Causa, razon o motivo?
Alguien me puede comentar algo?
Gracias.
Respuesta Responder a este mensaje
#4 Héctor Miguel
10/03/2009 - 01:16 | Informe spam
hola, Corando !

Revisando el codigo anterior, funciona muy bien buscando textos
pero al buscar numeros no funciona bien, solo me da un resultado y se detiene la busqueda.
Causa, razon o motivo? ...



1) cambia (y prueba alternando los cambios) en el metodo .Find lo siguiente:
xlPart <-> xlWhole
xlFormulas <-> xlValues (OJO: xlFormulas podria resultar en una busqueda mas... "tardadita") -?-

2) tu codigo original (aparentemente) "se estaciona" en el tercer valor (luego de 2 busquedas previas/anteriores)
(pregunta:) que pasa si NO has dos (o mas) coincidencias del valor buscado -???-

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#5 De_Corando.
10/03/2009 - 02:35 | Informe spam
Buenas Noches Hector Miguel.
un cordial saludo

Hice los cambios y persiste el problemita.
Ademas veo un gran detalle. La columna "A" esta en blanco,"B" es
numero consecutivo de la lista, "C" Nombre y "D" Apellidos, "E", "F",
etc son numeros, la "O" y "P", pueden contener numeros o textos,.
Cuando busca en "C" y "D", no hay problemas, pero ya cuando se
encuentra fuera de ese rango, es cuando se "estaciona" por mas click
que le doy.
Donde el dato a buscar esta en "C3", arriba de los encabezados (fila
4 de las columnas)

Agradezco tu interes en el problemita.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida