In questo articolo, creeremo una macro per applicare la formattazione condizionale nell’area selezionata.

Abbiamo utilizzato numeri casuali come dati campione per dimostrare il funzionamento della macro.

RawData

La macro può essere eseguita facendo clic sul pulsante “Trova massimo” nella scheda “Principale”.

ArrowMainSheet

Spiegazione logica

Abbiamo creato la macro “ConditionalFormat” per applicare la formattazione condizionale all’area selezionata. Questa macro evidenzia la cella in colore viola, che contiene il valore massimo nell’area selezionata.

Prima di eseguire questa macro, è necessario selezionare un’area su cui si desidera applicare la formattazione condizionale.

Ad esempio, abbiamo selezionato un intervallo di celle da B9 a F17 come campione di dati selezionati.

ArrowSelectedSample

Quando si esegue la macro dopo aver selezionato l’area campione, la formattazione condizionale viene applicata all’area selezionata e la cella D16, che contiene il valore più alto (97), verrà evidenziata in viola.

ArrowFirstSampleOutput

Ora, prendi un altro campione. Abbiamo selezionato l’intervallo dalla cella B10 a F13 come seconda area campione.

ArrowSecondSample

Dopo aver selezionato la seconda area campione, fare clic sul pulsante “Find Max” per eseguire la macro. La formattazione condizionale verrà applicata all’area selezionata e la cella C11 verrà evidenziata in colore viola, poiché contiene il valore massimo (92) nell’area selezionata.

ArrowSecondSampleOutput

Dopo aver eseguito la macro per due diversi campioni, la formattazione condizionale viene applicata a entrambi. Nei dati del campione, entrambe le celle C11 e D16 saranno evidenziate in colore viola, poiché rappresentano i valori massimi nei rispettivi campioni.

ArrowFinalOutput

Se i valori in uno qualsiasi dei campioni vengono modificati e uno dei valori appena inseriti è il valore più alto, la cella con quel particolare valore verrà evidenziata.

Spiegazione del codice

Selection.FormatConditions.Delete Il codice sopra viene utilizzato per eliminare qualsiasi formattazione condizionale applicata ai dati selezionati.

Selection.FormatConditions.Add Tipo: = xlExpression, Formula1: = _ “=” & Selection.Cells (1) .Address (False, False) & “= MAX (” & Selection.Address & “)”

Il codice sopra viene utilizzato per aggiungere una nuova formattazione condizionale. Tipo specifica che l’espressione viene utilizzata per applicare la formattazione della condizione. La formula dell’espressione è definita in Formula1.

Selection.Cells (1) .Address (False, False)

Il codice sopra viene utilizzato per fare riferimento all’indirizzo della prima cella nella selezione.

“=” & Selection.Cells (1) .Address (False, False) & “= MAX (” & Selection.Address & “)”

Il codice sopra viene utilizzato per confrontare il valore della prima cella selezionata con il valore massimo della selezione.

Selection.FormatConditions (1) .Interior.ColorIndex = 39 Il codice sopra viene utilizzato per assegnare il colore viola alla cella che soddisfa la condizione della formattazione.

Segui sotto per il codice

Sub ConditionalFormat()

With Selection

'Delete any previous conditional formatting

.FormatConditions.Delete



'add conditional formatting to selected cell

.FormatConditions.Add Type:=xlExpression, Formula1:= _

"=" & Selection.Cells(1).Address(False, False) & "=MAX(" & Selection.Address & ")"



'Assigning Violet color for the conditional formatting

.FormatConditions(1).Interior.ColorIndex = 39



End With





End Sub

Se ti è piaciuto questo blog, condividilo con i tuoi amici su Facebook e Facebook.

Ci piacerebbe sentire la tua opinione, facci sapere come possiamo migliorare il nostro lavoro e renderlo migliore per te. Scrivici a [email protected]