Condividi:        

Macro colora se

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Macro colora se

Postdi Statix » 03/04/11 16:23

Ciao a tutti,
dovrei colorare con una macro ,
un range di 1000 righe C3:G1003
ogni riga è composta da 5 numeri,
la macro deve colorare di questi 5 numeri di ogni riga ,solo se sono >= 2 ad una serie di numeri .
esempio
C3:G3
1-2-4-8-23 ' serie di numeri 1-12-24-34-56-8-14
1-2-4-8-23,
questa macro va applicata a 7 serie diverse e quindi 7 colori diversi.
Immagine
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Sponsor
 

Re: Macro colora se

Postdi Anthony47 » 03/04/11 20:18

Hum…
la macro deve colorare di questi 5 numeri di ogni riga ,solo se sono >= 2 ad una serie di numeri

questa macro va applicata a 7 serie diverse e quindi 7 colori diversi

Non decodifico il significato della prima frase, mentre per la seconda vorrei sapere la posizione (coordinate celle) delle sette serie di (sempre sette?) numeri.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro colora se

Postdi Statix » 03/04/11 20:31

Ciao Anthony,
ti faccio un esempio
in C3:G3 ho
1-2-3-4-5

in L3:T£ ho
1-12-23-34-45-56-3-8-90-
la macro deve colorare i valori in C3:G3 uguali al range L3:T3 ma solo se i numeri uguali sono almeno 2
nell'esempio
1-3
ecco come e dopo
1-2-3-4-5
le righe sono più di 1000
C3:G1000
e di queste 1000 righe devo confrontarle con altri range L4:T4
-L5:T5 etc.etc.
quindi mi basterebbe solo per questo esempio,poi eventualmente la replico cambiando i range
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Macro colora se

Postdi Statix » 03/04/11 20:41

Nel forum ,ho trovato una macro simile,
ho fatto alcune modifiche, mi colora solo 2 numeri ,
quindi se c'è un terzo o quarto numero uguale al range L3:T3 non me lo colora.
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Macro colora se

Postdi Statix » 03/04/11 21:20

ecco,questo lo fatta ,facendo girare diverse macro
Immagine
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Macro colora se

Postdi Anthony47 » 03/04/11 21:37

Questa macro dovrebbe lavorare su 1 intervallo di confronto:
Codice: Seleziona tutto
Sub StaCol()
Range("A:E").Font.ColorIndex = 1  'Toglie ogni colore ai numeri
RComp = "L3:T3"    '<< I numeri di confronto
LastR = Cells(Rows.Count, 1).End(xlUp).Row
ICOL = 3 + K    'parte dal Rosso
'
For I = 3 To LastR
    KK = 0
    For J = 1 To 5
        KK = KK + Application.WorksheetFunction.CountIf(Range(RComp), Cells(I, J))
    Next J
    If KK > 1 Then
        For J = 1 To 5
        If Application.WorksheetFunction.CountIf(Range(RComp), Cells(I, J)) > 0 Then _
            Cells(I, J).Font.ColorIndex = ICOL
        Next J
    End If
Next I
End Sub

Devi inserire in un loop che varia il range di confronto; se sono sottostanti a quello dichiarato puoi usare un Ciclo for K=1 to NumeroDiRigheDiConfrontp /Next K e modificare la parte Countif in .CountIf(Range(RComp).Offset(K - 1, 0)
La riga ICOL = 3 + K deve essere la prima inclusa nel ciclo, e il "+K" serve a modificare ICOL=Indice di Colore con cui colorerai le celle.

Devi pero' affinare la macro in funzione dei tuoi desideri; ad esempio come descritto sopra un eventuale confronto Ok sulle righe "successive" colora i numeri col nuovo ICOL, ma non toglie eventuali colori gia' applicati.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro colora se

Postdi Statix » 03/04/11 21:47

Ho provato la macro,
non mi funziona se i dati sono in C3:G1000
mentre se li metto in A:E funziona,
stò provando a fare qualche modifica.
ma non mi va.
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Macro colora se

Postdi Anthony47 » 03/04/11 21:55

Questa
Codice: Seleziona tutto
Sub StaCol()
RComp = "L3:T3"
LastR = Cells(Rows.Count, 3).End(xlUp).Row
Range("C:G").Font.ColorIndex = 1
For K = 1 To 1    '<<<< N° di righe da confrontare
ICOL = 2 + K
Range(RComp).Offset(K - 1, 0).Range("A1").Font.ColorIndex = ICOL
For I = 3 To LastR
    KK = 0
    For J = 3 To 8
        KK = KK + Application.WorksheetFunction.CountIf(Range(RComp).Offset(K - 1, 0), Cells(I, J))
    Next J
    If KK > 1 Then
        For J = 3 To 8
        If Application.WorksheetFunction.CountIf(Range(RComp).Offset(K - 1, 0), Cells(I, J)) > 0 Then _
            Cells(I, J).Font.ColorIndex = ICOL
        Next J
    End If
Next I
Next K
End Sub

Ho inserito anche il ciclo For K=1 to NN, devi mettere a mano quante righe di dati di confronto hai (istruzione marcata <<<).
Ti colora anche la prima cella dei numeri di confronto con lo stesso ICOL.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Macro colora se

Postdi Statix » 03/04/11 22:01

Ok,non finirò mai di ringraziarti,
grazie 10000
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta


Torna a Applicazioni Office Windows


Topic correlati a "Macro colora se":


Chi c’è in linea

Visitano il forum: Nessuno e 39 ospiti