............ Foro Excel
Si no lo has hecho aún: REGISTRATE!!!

Un buscador

Ver el tema anterior Ver el tema siguiente Ir abajo

Un buscador

Mensaje por Ferxillo el Lun Nov 09, 2009 1:47 pm

hola, que tal necesito ayuda..
excel tiene la opcion de busqueda (Crtl + B o Crtl + F en ingles), bueno yo necesito exactamente eso, pero que cada resultado que muestre tambien cambie de color esa celda, no se mucho de excel no se si pueda modificarse alguna opcion de ese buscador o aiga que emplear alguna formula o macro.. de antemano gracias!

Ferxillo

Masculino Cantidad de envíos : 3
Edad : 29
Ciudad - Pais : Mexico
Version de Excel : 2007
Fecha de inscripción : 09/11/2009

Volver arriba Ir abajo

Re: Un buscador

Mensaje por P@li el Lun Nov 09, 2009 2:09 pm

Es sencillo, en el formulario de búsqueda está el botón "Buscar todo", cuando le hacés clic abajo te aparecen los resultados, seleccionás el primero con un clic, y después el último manteniendo apretada la tecla Shift, después tenés varios caminos para llegar al resultado deseado, el más fácil de explicar es este, vas a Formato>Celdas...>[Tramas]>Seleccionás el color que querés>Aceptar.


Ah! no quería olvidarme, no se dice ni se escribe aiga, lo correcto es decir y escribir haya.

Saludos.

P@li
Admin

Masculino Cantidad de envíos : 243
Edad : 34
Ciudad - Pais : Buenos Aires, Argentina
Version de Excel : Microsoft Excel 2002 (10.2614.2625)
Fecha de inscripción : 03/03/2008

Volver arriba Ir abajo

Re: Un buscador

Mensaje por Ferxillo el Lun Nov 09, 2009 4:00 pm

muchas gracias por la correcion, y tmb por tu respuesta, ya cheque lo que me indicas y es buena opcion pero necesito algo mas cencillo :P, explicare mas a fondo, es una hoja que contiene una lista de aprox 3300 articulos de ferreteria con columnas de codigo, descripcion, costo y precio a publico, esta lista la usaran personas para buscar precios que no han usado computadora anteriormente... la opcion de Ctrl + B funciona bien, pero batallan un poco al no distinguir el recuadro que cubre al resultado, asi que necesito que la opcion de cambiar la celda de color ya este predefinida, puesto que para ellos seria algo complicado hacer lo que tu recomiendas..

espero haberme explicado bien, de antemano gracias!

Ferxillo

Masculino Cantidad de envíos : 3
Edad : 29
Ciudad - Pais : Mexico
Version de Excel : 2007
Fecha de inscripción : 09/11/2009

Volver arriba Ir abajo

Re: Un buscador

Mensaje por P@li el Lun Nov 09, 2009 4:28 pm

Podrías crear en la columna de precio un formato condicional, igualando la condición al valor que pongas en la "celda de búsqueda", algo como "=$C$1", y cuando la celda cumpla con esa condición se coloree de naranja.

Al cambiar el valor de C1, las celdas automaticamente se cambiaran de color, según cumplan o no con la condición.

Más que eso, es hablar de macros, y como ya es sabido, no se hacen macros a medida. Si presentas tu código, podemos darte una mano, orientarte en lo que podamos.

Saludos.

P@li
Admin

Masculino Cantidad de envíos : 243
Edad : 34
Ciudad - Pais : Buenos Aires, Argentina
Version de Excel : Microsoft Excel 2002 (10.2614.2625)
Fecha de inscripción : 03/03/2008

Volver arriba Ir abajo

Re: Un buscador

Mensaje por P@li el Lun Nov 09, 2009 4:48 pm

Esto es lo que decía, a ver si se entiende mejor con un ejemplo:
[Tienes que estar registrado y conectado para ver este vínculo]

P@li
Admin

Masculino Cantidad de envíos : 243
Edad : 34
Ciudad - Pais : Buenos Aires, Argentina
Version de Excel : Microsoft Excel 2002 (10.2614.2625)
Fecha de inscripción : 03/03/2008

Volver arriba Ir abajo

Re: Un buscador

Mensaje por Ferxillo el Lun Nov 09, 2009 7:28 pm

de nuevo muchas gracias por tu respuesta P@li!..
pero al parecer la opcion es una macro, eh encontrado un ejemplo esta macro en efecto cambia de color la celda al encontrarla y muestra los resultados en otra celda, no se si puedas ayudarme a modificarla para que solo cambie de color los resultaldos y aparte en vez de regresar el cursor a la celda donde estaba este se quede en el primer resultado que obtuvo.. este es el codigo


Sub buscar_cosas()
On Error Resume Next
Application.ScreenUpdating = False
donde_estamos = ActiveCell.Address
'**************************************
'Estas son las celdas que debes cambiar
celda_inicial = "B7"
celda_final = "B3215"
mostrar_datos = "B3220"
'**************************************
'Hacemos las preguntas de rigor
valor_buscado = InputBox("Introduce el valor, dato, o texto que deseas buscar:", "Dato a buscar")
exacitud = MsgBox("¿Deseas encontrar el dato exactamente, tal y como lo escribiste?", vbYesNo)
If Trim(valor_buscado) = "" Then Exit Sub
'--------------------------------------
'pasamos los datos a variables
min_fila = Range(celda_inicial).Row
max_fila = Range(celda_final).Row
min_columna = Range(celda_inicial).Column
max_columna = Range(celda_final).Column
'nos situamos en la primera celda
Range(celda_inicial).Select
'comenzamos a buscar el dato
For i = min_fila To max_fila
For j = min_columna To max_columna
If exacitud = vbYes Then
'Sí buscamos el dato exacto
If ActiveCell.Value = Trim(valor_buscado) Then
'ponemos el dato en color rojo
Selection.Font.ColorIndex = 3
'guardamos la referencia donde se encuentra el dato
celdas_datos = celdas_datos & "," & ActiveCell.Address
End If
Else
'No buscamos el dato exacto
If InStr(ActiveCell.Value, valor_buscado) > 0 Then
'ponemos el dato en color rojo
Selection.Font.ColorIndex = 3
'guardamos la referencia donde se encuentra el dato
celdas_datos = celdas_datos & "," & ActiveCell.Address
End If
End If
ActiveCell.Offset(0, 1).Select
Next
ActiveCell.Offset(1, -max_columna).Select
Next
'quitamos la coma inicial del array de referencias
celdas_datos = Mid(celdas_datos, 2, Len(celdas_datos))
'ahora reemplazamos la referencia absoluta
celdas_datos = Replace(celdas_datos, "$", "")
'mostramos las referencias de las celdas
Range(mostrar_datos) = "Los datos encontrados están en: " & celdas_datos & ", y son estos:"
'bajamos una fila
nuevos_datos = Range(mostrar_datos).Offset(1, 0).Address
Range(nuevos_datos).Select
'descomponemos el array
celdas = Split(celdas_datos, ",")
For i = 0 To UBound(celdas)
'ponemos la celda en cuestión
ActiveCell = Range(celdas(i)).Value
ActiveCell.Offset(1, 0).Select
Next
'Ordenamos el rango de datos con las referencias
Range(nuevos_datos).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Sort Key1:=Range(nuevos_datos), Order1:=xlAscending
'nos situamos en la celda donde estábamos
Range(donde_estamos).Select
Application.ScreenUpdating = True
End Sub


de antemano gracias!

Ferxillo

Masculino Cantidad de envíos : 3
Edad : 29
Ciudad - Pais : Mexico
Version de Excel : 2007
Fecha de inscripción : 09/11/2009

Volver arriba Ir abajo

Re: Un buscador

Mensaje por P@li el Lun Nov 09, 2009 8:04 pm

Esto es más difícil que empezar el código de 0, jajaja, tengo un compañero que siempre va a las clases, pero cuando falta jamás le pido las hojas porque no le entiendo un pepino, esto más similar no puede ser....!!!

Podrías empliar mi anterior propuesta con una macro simple como la que sigue. Pero si realmente estás interesado en macros, en la red hay muchos manuales muy sencillos, no puedo dar links porque no son de mi autoría, pero ahí están.

Código:

Sub buscar_cosas()
    Range("C1")= InputBox("Introduce el valor, dato, o texto que deseas buscar:", "Dato a buscar")
End Sub

Esto no te va a seleccionar el primero encontrado. Sí te va a marcar los que coincidan con la validación.

Y si no, podés intentar poniendo tu consulta en el foro de macros, aunque no va a faltar Gali, diciéndote que no se hacen macros a medida, al igual que te lo dije yo.

Saludos,
Pablo.

P@li
Admin

Masculino Cantidad de envíos : 243
Edad : 34
Ciudad - Pais : Buenos Aires, Argentina
Version de Excel : Microsoft Excel 2002 (10.2614.2625)
Fecha de inscripción : 03/03/2008

Volver arriba Ir abajo

Re: Un buscador

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.