Uso de Buscar y reemplazar para buscar celdas con formato condicional (Microsoft Excel)
Richard está tratando de usar Buscar y reemplazar para contar celdas formateadas con un color de relleno particular. Esto funciona bien, excepto cuando el relleno es el resultado del formato condicional. En este caso, Buscar y reemplazar no los encuentra. Sin embargo, todavía es posible filtrar filas que contienen celdas formateadas condicionalmente según su color de relleno. Richard se pregunta por qué, si Autofilter es capaz de detectar cualquier tipo de formato de celda, Buscar y reemplazar no puede ubicar esas celdas.
Cualquier cosa que pudiera ofrecerse como un «por qué» sería, por supuesto, especulación. (Muchas veces me he preguntado por qué Microsoft eligió hacer las cosas como lo hizo). Dicho esto, tiene sentido que Buscar y reemplazar esté codificado para que pueda encontrar cosas que puedan reemplazarse. Los colores de relleno que se muestran como resultado del formato condicional son solo eso: un color de visualización, no un color de relleno real. Los colores de la pantalla no se pueden reemplazar, por lo que no se pueden encontrar.
Sin embargo, puede utilizar un método diferente para mostrar el recuento que desea: una macro. La siguiente macro mira todas las celdas en un rango particular y si se encuentra una coincidencia con un color deseado, entonces se incrementa el contador. (Es el objeto .DisplayFormat que se examina, por lo que tiene el color «tal como se muestra», lo que significa que también coincide con lo que puede mostrar el formato condicional).
Sub CountCellColors() Dim Rng As Range Dim c As Range Dim Colr As Variant Dim J As Integer Dim sTemp As String Set Rng = Range("A1:Z500") 'Change as needed Colr = vbYellow 'Set color you want to count J = 0 sTemp = "" For Each c In Rng If c.DisplayFormat.Interior.Color = Colr Then J = J + 1 sTemp = sTemp & vbCr & " " & c.Address End If Next c Select Case J Case 0 sTemp = "There are no colored cells in the range." Case 1 sTemp = "There is 1 colored cell in the range:" _ & vbCr & sTemp Case Else sTemp = "There are " & J & " colored cells in the range:" _ & vbCr & sTemp End Select MsgBox sTemp End Sub
Cuando la macro termina de ejecutarse, muestra un cuadro de mensaje que muestra el número de coincidencias de color, así como las direcciones de las celdas que coincidieron. Como está escrito, la macro verifica las celdas A1: Z500 y busca el relleno amarillo en las celdas. Ambas líneas donde se establecen estos valores se pueden cambiar a lo que sea apropiado para sus necesidades.
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (13742) se aplica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 y Excel en Office 365.