Impostare la formattazione condizionale per un’area utilizzando VBA in Microsoft Excel
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.
La macro può essere eseguita facendo clic sul pulsante “Trova massimo” nella scheda “Principale”.
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.
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.
Ora, prendi un altro campione. Abbiamo selezionato l’intervallo dalla cella B10 a F13 come seconda area campione.
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.
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.
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]