Sett opp betinget formatering for et område ved hjelp av VBA i Microsoft Excel

Anonim

I denne artikkelen vil vi lage en makro for å bruke betinget formatering i det valgte området.

Vi har brukt tilfeldige tall som eksempeldata for å demonstrere at makroen fungerer.

Makro kan kjøres ved å klikke "Finn maks" -knappen på "Hoved" -arket.

Logisk forklaring

Vi har laget "ConditionalFormat" -makro for å bruke betinget formatering på det valgte området. Denne makroen fremhever cellen i fiolett farge, som inneholder maksimalverdi i det valgte området.

Før du utfører denne makroen, må du velge et område som han vil bruke den betingede formateringen på.

For eksempel har vi valgt et utvalg av celler fra B9 til F17 som utvalg av utvalgte data.

Ved utføring av makroen etter at du har valgt prøveområde, blir betinget formatering brukt på det valgte området, og celle D16, som inneholder den høyeste verdien (97), vil bli markert med fiolett farge.

Ta en ny prøve. Vi har valgt området fra celle B10 til F13 som andre prøveområde.

Etter å ha valgt det andre prøveområdet, klikker du på "Finn maks" -knappen for å kjøre makroen. Betinget formatering vil bli brukt på det valgte området, og celle C11 vil bli markert med fiolett farge, da den inneholder maksimalverdi (92) i det valgte området.

Etter å ha utført makroen for to forskjellige prøver, blir betinget formatering brukt på dem begge. I prøvedata vil både cellene C11 og D16 bli markert med fiolett farge, ettersom de representerer maksimalverdier i sine respektive prøver.

Hvis verdiene i noen av prøvene endres og en av de nylig innsatte verdiene er den høyeste verdien, vil cellen med den aktuelle verdien bli uthevet.

Kode forklaring

Selection.FormatConditions.Delete

Koden ovenfor brukes til å slette en betinget formatering som brukes på de valgte dataene.

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

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

Koden ovenfor brukes til å legge til en ny betinget formatering. Type angir at uttrykket brukes til å bruke betingelsesformateringen. Formelen for uttrykket er definert i Formel1.

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

Koden ovenfor brukes til å referere adressen til den første cellen i utvalget.

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

Koden ovenfor brukes til å sammenligne verdien av den første valgte cellen med den maksimale verdien av utvalget.

Selection.FormatConditions (1) .Interior.ColorIndex = 39

Koden ovenfor brukes til å tildele fiolett farge til cellen som tilfredsstiller betingelsen for formateringen.

Følg koden nedenfor

 Sub ConditionalFormat () Med markering 'Slett eventuell tidligere betinget formatering .FormatConditions.Delete' legg til betinget formatering i valgt celle .FormatConditions.Add Type: = xlExpression, Formula1: = _ "=" & Selection.Cells (1) .Adress (False) , False) & "= MAX (" & Selection.Address & ")" 'Tilordne fiolett farge for den betingede formateringen .FormatConditions (1) .Interior.ColorIndex = 39 Slutt med ende -sub 

Hvis du likte denne bloggen, del den med vennene dine på Facebook. Du kan også følge oss på Twitter og Facebook.

Vi vil gjerne høre fra deg, gi oss beskjed om hvordan vi kan forbedre arbeidet vårt og gjøre det bedre for deg. Skriv til oss på e -post