Posizionati sulla cella A1, posiziona il mouse nel vertice in basso a
dx e ti comparità una croce, tasto sx fino alla riga che vuoi tu...in
questo modo quando b1 sarà "si", tutte queste celle si coloreranno.
Ciao
Ale
ciao ale,
spiego meglio:
Colonna A Colonna B
5 si
200 no
30 no
10 si
In pratica la cella A1 dovrebbe colorarsi in rosso perche in B1 ho SI
La cella A2 e A3 rimane bianca perchè in B2 ho NO
La cella A4 si dovrebbe colorare in rosso perchè B4 ho SI
ciao
> spiego meglio:
> Colonna A Colonna B
> 5 si
> 200 no
> 30 no
> 10 si
> In pratica la cella A1 dovrebbe colorarsi in rosso perche in B1 ho SI
> La cella A2 e A3 rimane bianca perchè in B2 ho NO
> La cella A4 si dovrebbe colorare in rosso perchè B4 ho SI
> ciao-
Ciao Leo
Seleziona il range A1:A200.
La formula per la fomattazione condizionale è:
=B1="SI"
(invece di $B$1)
Ciao, Nur
OK! fatto ho cambiato la formula in questo modo:
=B1="si"
Approfitto per chiedere il processo contrario:
come faccio (non visivamente!!) a sapere se una cella è colorata?
Colonna A Colonna B
5
200
30
10
Se A1 è in rosso in B1 dovrei scrivere SI
SeA2 è in rosso.........
grazie ale
ciao
ho risolto in questa maniera:
Sub verifica_colore()
Range("A1").Select
Selection.End(xlDown).Select
a = ActiveCell.Row
For i = 1 To a
ran = "b" & i
If Range(ran) = "SI" Then
Range("a" & i).Select
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
Else
Range("a" & i).Select
With Selection.Interior
Selection.Interior.ColorIndex = xlNone
End With
End If
Next i
Range("A1:A23").Copy
Range("J1:J23").Select
ActiveSheet.Paste
Range("G20").Select
Application.CutCopyMode = False
End Sub
Francamente la gestione dei colori è sempre un po' complicata. O vedi
questo vecchio post
o cmq sia, con lo stesso ragionamento per cui la cella A1 diventa
rossa fai scrivere nella cella B1 "SI".
Ciao
Ale
> > OK! fatto ho cambiato la formula in questo modo:
> > =B1="si"
> > Approfitto per chiedere il processo contrario:
> > Se A1 è in rosso in B1 dovrei scrivere SI
> > SeA2 è in rosso.........
> > grazie ale
> > ciao
>
> ho risolto in questa maniera:
> Sub verifica_colore()
[...]
> If Range(ran) = "SI" Then
> Range("a" & i).Select
> With Selection.Interior
> .ColorIndex = 6
> .Pattern = xlSolid
> End With
[...]
> Next i
> End Sub
Ciao leo.
Cosa hai risolto con questa?
La prima tua domanda?
Perché se si tratta di scrivere "SI" affianco alle celle rosse, non
penso che possa aiutarti.
Se non sbaglio, Sub Verifica_colore() colora di giallo la cella in A
se in B c'è scritto "SI" (cioè fa quello che faceva la formattazione
condizionale).
Se vuoi l'opposto, cioè che venga scritto "SI" in B se A è colorata,
penso tu debba valutare qualche alternativa.
Prova così:
[ho tenuto 3 come colorindex (giallo) come avevi indicato tu qui
sopra, se vuoi il rosso, sostituisci il 6 con 3 dove ho indicato]
'-----------------------------------------------------------------------------------------
Public Sub ImpostaValori()
'qui sotto sostituisci (eventualmente) a quello che ho scritto io
' |il nome del foglio|,|la colonna 'colorata'|, |il
ColorIndex|
CheckColor ThisWorkbook.Worksheets("Foglio1"), "A", 6
End Sub
Public Sub CheckColor(MySh As Excel.Worksheet, MyCol As String, ColInd
As Long)
Dim c As Excel.Range
For Each c In MySh.Range(Cells(1, MyCol), Cells(Rows.Count, MyCol).End
(xlUp))
If c.Interior.ColorIndex = ColInd Then
c.Offset(0, 1).Value = "SI"
Else
End If
Next
End Sub
'----------------------------------------------------------------
Ciao, Nur
ciao Nur,
funziona perfettamente. Grazie!!