Detección de color en Excel a través de VBA
Resuelto
Kilyox
-
Kilyox -
Kilyox -
Hola,
me gustaría saber cómo detectar si hay alguna celda en rojo (por ejemplo) en una hoja de Excel y, en caso afirmativo, incrementar un contador con el número de celdas encontradas.
Solo he logrado detectar si la celda seleccionada es roja o no, pero eso basta con tener ojos...
No conozco muy bien el VBA, pero tengo un buen dominio de VB.
¿Podrían ayudarme, por favor?
¡Gracias de antemano!
me gustaría saber cómo detectar si hay alguna celda en rojo (por ejemplo) en una hoja de Excel y, en caso afirmativo, incrementar un contador con el número de celdas encontradas.
Solo he logrado detectar si la celda seleccionada es roja o no, pero eso basta con tener ojos...
No conozco muy bien el VBA, pero tengo un buen dominio de VB.
¿Podrían ayudarme, por favor?
¡Gracias de antemano!
Configuración: Windows XP Firefox 3.0.1
4 respuestas
-
Houhou!!!!1 mi primer código VBA
Sub ColorRojo()
Dim i, j, n As Integer
n=0
For i = 1 To 10
For j = 1 To 10
If Cells(i, j).Interior.ColorIndex = 3 Then n = n + 1
Next j
Next i
Cells(1, 1) = n
End Sub
Cuenta el número de celdas rojas entre la fila 10 y la columna 10
puedes cambiar el tamaño de la búsqueda aumentando i y j
el resultado se muestra en A1, puedes cambiarlo
si quieres cambiar el color 3, es rojo, el resto no lo sé -
Hola,
para obtener la lista de colorIndex, presiona F1 y en búsqueda PatternColorIndex, propiedad
Vas a tener la página con los colores y sus números.
¡Hasta luego!
--
La experiencia enseña más seguro que el consejo. (André Gide) -
Para la macro...
Sub ChercheCouleur() Dim Coul As Integer Dim Cel As Range Dim Compteur As Integer Coul = 3 Sheets("Feuil1").Select ' adaptar al nombre de la hoja For Each Cel In Range("A1:J10") 'adaptar el rango a las celdas a probar If Cel.Interior.ColorIndex = Coul Then Compteur = Compteur + 1 Next MsgBox "Hay " & Compteur & " celdas con el color N° " & Coul End Sub
A+
--
La experiencia enseña más seguro que el consejo. (André Gide) -