aetio ha scritto:Ciao,
Grazie, come sempre chiaro e sintetico.
Di questa
Commenta:If cl.Borders.Color = 255 Then il colore 255 è quello che ho estratto dal tuo file
ne avevo intuito il compito, ma temevo di dire una fesseria dato che
Color = 255 non l'ho trovato scritto in alcun sito web.
E' forse un modo diverso di scrivere questo gruppo di istruzioni:
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 10079487 .TintAndShade = 0
.PatternTintAndShade = 0
End With
??
Dove posso trovare un elenco di codici dei colori Excel di tipo Color (quindi non ColorIndex)?
(forse in una pagina specifica della Guida di Excel)
Qual'è la procedura per "estrarre" da Excel tali codici di colore?
Grazie assai, buon pomeriggio
eZio
Salve
la premessa è questa:
Colorindex utilizza l'indice (da 1 a 56) della paletta dei colori standard di excel
Color Utilizza la gamma RGB dei colori
nel caso sopra : il valore 255 della proprità Color è equivalante a 3 della proprietà colorindex.
se fai girare la macro che segue (mutuata in rete con una m ia piccola modifica) avrai la lista dei Colorindex con l'equivalente
del valore Color
Sub ShowColors()
'Based on fact that
'RGB(R, G, B) = 65536 * B + 256 * G + R
Dim i As Long, C As Long
Dim R As Long, G As Long, B As Long
Range("A1").Value = "Index"
Range("B1").Value = "Color"
Range("C1").Value = "R"
Range("D1").Value = "G"
Range("E1").Value = "B"
Range("F1").Value = "Check"
Range("G1").Value = "Color"
For i = 1 To 56
Range("A1").Offset(i, 0).Value = i
Range("B1").Offset(i, 0).Interior.ColorIndex = i
C = Range("B1").Offset(i, 0).Interior.Color
Range("G1").Offset(i, 0) = C
R = C Mod 256
G = ((C - R) Mod 65536) / 256
B = (C - 256 * G - R) / 65536
Range("C1").Offset(i, 0).Value = R
Range("D1").Offset(i, 0).Value = G
Range("E1").Offset(i, 0).Value = B
Range("F1").Offset(i, 0).Interior.Color = RGB(R, G, B)
Next i
End Sub
saluti
Giap