Celdas iguales

Hola gracias por tu respuesta anterior me fue perfecto; pero ahora tengo otro problema con una planilla que utilizo para saber los cd que tengo y el problema es que cuando busco uno en especia no lo encuentro así que me idea es colocar el nombre en una celda y que se pinte la celda con el mismo nombre yo utilizo la celda b2 hasta b500 para poner los nombre de los cd y quiero colocar en la celda b1 el nombre que busco y y que la celda que coincida con el nombre colocado se pinte o en todo caso que al lado en la celda h en la que coincida el nombre diga alguna leyenda( que aparezca donde dice el nombre no donde lo escribo para encontrarlo gracias

2 respuestas

Respuesta
1
Si entendí la pregunta puedes hacerlo mediante formato condicional. Con Excel 2010
Grupo Inicio - Formato Condicional - Administrar Regla-Nueva Regla
Para el tipo de regla selecciona: Utilizar Fórmula que determine las celdas para aplicar formato
En el campo colocaras esta formula =CONSULTAV(B1;B2:B500;1;FALSO)=B1
Click en formato y seleccionas como quieres que aparezca los datos encontrados
Luego en la opcion aplicar a colocas =B1:B500
Espero haberte ayudado
Nota: La función consultav la sustituyes por buscarv en caso de que sea excel 2007 y inferior.
Hola gracias por tu respuesta rápida yo tengo el excel 2003
Ok cambia tu fórmula a buscarv y aquí te explican como aplicar formato condicional en excel 2003
http://www.fabila.com/noticia.asp?id=701
Respuesta
1
Hay dos maneras de hacer lo que pides, la primera, es que cada vez que tu hagas un cambio en B1 se corra una macro y haga lo que necesitas, el problema radica en que no puedo escribir en C1 la dirección pero te doy un msgbox que te bota el dato, la macro sería la siguiente:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
Range("B2:B500").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
a = Range("B1").Value
On Error GoTo kike
Range("B2:B500").Select
Selection.Find(What:=a, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
b = ActiveCell.Row
Range("B" & b).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
MsgBox "El valor buscado se encuentra en la celda B" & b
End If
kike:
If Err = 13 Then
MsgBox "El valor buscado no se encuentra en el rango de detos pre-establecido"
End If
Range("B1").Select
End Sub
La segunda opciópn es que tu ejecutes la macro ya sea con una acceso directo o con un botón y en ese caso si puedo escribir en C1 el dato que necesitas en lugar de mandarlo en un msgbox, la macro sería:
Sub Pinta()
Range("B2:B500").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("C1").ClearContents
a = Range("B1").Value
On Error GoTo kike
Range("B2:B500").Select
Selection.Find(What:=a, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
b = ActiveCell.Row
Range("B" & b).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("C1").Value = "El valor buscado se encuentra en la celda B" & b
End If
kike:
If Err = 13 Then
Range("C1").Value = "El valor buscado no se encuentra en el rango de detos pre-establecido"
End If
Range("B1").Select
End Sub
Prueba la que más te convenga, y no olvides finalizar la pregunta.
¿Hola y si escribo en otra celda que se pueda para hacerlo más sencillo? Se podrá
El problema es que el escribir en esa hoja genera un problema si la quieres controlar por cambios, hay otras maneras pero la que te pongo creo que es la mejor.
Si me dices que necesitas que se corra la macro al modificar la celda, y que necesitas que se escriba en C1, te paso otra, pero si ves la que te pase, para que se corra la macro se debe entrar a modificar la celda, el solo activar la celda no corre la macro, en cambio el otro código el, solo pasar por la celda hace que se active.
Dime si la quieres
Hola no importa donde lo escriba yo solo quiero saber en que lugar esta guardado por que cada nombre tiene en la celde de hallado la ubicación por eso quiero poner el nombre del cd y saber donde guardarlo lo puedo escribir donde quiera en la misma hoja ; en otra celda oen otra hoja me daría lo mismo si la finalidad es ubicarlo enseguida ya cea con una leyenda o que cambie de colo el celeccionado al escribirlo saludos y gracias por la paciencia de verdad aprecio tu explicación
Lo siento no hayo como pegarte en la misma hoja la dirección de la celda, en todo caso creo que el msgbox te debedría servir.
Si te sirve que este el dato en otra hoja debes cambiar esta parte de la macro:
MsgBox "El valor buscado se encuentra en la celda B" & b
Por la siguiente:
Shhets("Hoja2").Range("C1").Value = "El valor buscado se encuentra en la celda B" & b
Mira y me avisas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas