• Miércoles 6 de Noviembre de 2024, 02:50

Autor Tema:  Cómo Obtener El Color De Una Celda?  (Leído 1948 veces)

vickyly

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Cómo Obtener El Color De Una Celda?
« en: Viernes 10 de Marzo de 2006, 22:06 »
0
Hola!!!

Quisiera saber si yo puedo obtener el color de una celda!
Estoy haciendo una macro en excel y gracias a eso podría generar información importante en una celda.
El motivo de esto es poder hacer un IF, donde pregunto si el color es  7, en caso de ser verdadero se hara una fórmula y en caso contrario otra fórmula.

Pero no sé como obtenerlo...

Les agradecería mucho la ayuda!

Saludos,
Vicky

ElberGon

  • Nuevo Miembro
  • *
  • Mensajes: 20
    • Ver Perfil
Re: Cómo Obtener El Color De Una Celda?
« Respuesta #1 en: Viernes 17 de Marzo de 2006, 00:07 »
0
Para validar si el color de una celda es uno o es otro yo haria algo asi:
(Es un pequño ejemplo que hice para te anexo un archivo de excel con el ejemplo tiene macros pero puedes confiar en ellas no hacen nada malo te lo juro)


Código: Text
  1.  
  2. Public Sub VerColCel(fin As Long, Optional ini As Long)
  3. Dim x As Long
  4. Dim CarCel As String
  5. Dim NumCel As String
  6. Dim ce As String
  7.  
  8. If ini < 1 Or fin < 1 Then Exit Sub
  9.  
  10. For x = ini To fin
  11.     CarCel = Chr(x + 64)
  12.     NumCel = "1"
  13.     ce = CarCel & NumCel
  14.     Range(ce).Select
  15.     Select Case Selection.Interior.ColorIndex
  16.         Case 7
  17.             MsgBox "Es color Rosa la celda " & ce
  18.             'Aqui van Tus Formulas
  19.             Range(CarCel & CStr(CLng(Val(NumCel) + 1))).Select
  20.             Cells(ini + 1, x) = "Rosa"
  21.             
  22.         Case 1
  23.             MsgBox "Es color Negro la celda " & ce
  24.             'Aqui van Tus Formulas
  25.             Range(CarCel & CStr(CLng(Val(NumCel) + 1))).Select
  26.             Cells(ini + 1, x) = "Negro"
  27.             
  28.         Case 4
  29.             MsgBox "Es color VerdeFosforesente la celda " & ce
  30.             'Aqui van Tus Formulas
  31.             Range(CarCel & CStr(CLng(Val(NumCel) + 1))).Select
  32.             Cells(ini + 1, x) = "VerdeFosforesente"
  33.             
  34.         Case 46
  35.             MsgBox "Es color NaranjaFuerte la celda " & ce
  36.             'Aqui van Tus Formulas
  37.             Range(CarCel & CStr(CLng(Val(NumCel) + 1))).Select
  38.             Cells(ini + 1, x) = "NaranjaFuerte"
  39.             
  40.         Case 6
  41.             MsgBox "Es color Amarillo la celda " & ce
  42.             'Aqui van Tus Formulas
  43.             Range(CarCel & CStr(CLng(Val(NumCel) + 1))).Select
  44.             Cells(ini + 1, x) = "Amarillo"
  45.             
  46.         'Case n . . .
  47.         
  48.         
  49.         'Case Else
  50.         
  51.     End Select
  52.     Selection.HorizontalAlignment = xlCenter
  53. Next x
  54. End Sub
  55.  
  56.  

Te Anexo el ejemplo como te digo cualquier cosa sigo en contacto con esta discucion espero que sea lo que nesesitas.

Nota: Tu problema lo tenias que haber planteado en el Foro de VBA en este lenguaje se hacen las macros en este foro es VB pero bueno

En el ejemplo que te puse elimina el contenido de las celdas de abajo de las celdas coloreadas para que veas lo que hace . . .
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
[size=109]  eLbErGoN  [/size]  

[El conosimiento es el arma que hace la Diferencia entre las personas; pero el saber no te hace mas que otra persona solo estas mas preparado