See õpetus näitab, kuidas kasutada VBA -d lahtri või lahtrivahemiku esiletõstmiseks.
Tingimuslik vormindamine on üks viis Exceli lahtrite esiletõstmiseks. Rakkude esiletõstmiseks saame kasutada ka VBA -d.
Tõstke esile lahter
VBA lahtri esiletõstmiseks saame kasutada lihtsat protseduuri, nagu allpool näidatud.
123 | Sub HighlightCell ()ActiveCell.Interior.Color = vbRedEnd Sub |
Tõstke esile lahtrite vahemik
Samamoodi saame valida lahtrite vahemiku ja tõsta esile kõik vahemiku lahtrid.
1234 | Sub HighlightRange ()Vahemik ("A1: A10"). ValigeValik.Sisese.Värv = vbPunaneEnd Sub |
Tõstke lahtrid esile lahtri väärtuse alusel
Lahtri esiletõstmiseks tingimuse lisamiseks võime lahtri esiletõstmiseks kasutada IF -lauset, kui lahtri väärtus on üle teatud väärtuse, antud juhul suurem kui 10.
12345 | Alamvalgustuse rakk_1Kui ActiveCell.Value> 10 siisActiveCell.Interior.Color = vbRedLõpp KuiEnd Sub |
Tõstke lahtrite väärtuse põhjal esile hulk lahtreid
Lahtrite vahemiku väärtuste kontrollimiseks peaksime iga lahtri läbi loopima, selle väärtuse kindlaks määrama ja seejärel vastavalt lahtri esile tõstma. Allolevas näites teeme kõigepealt kindlaks, et vahemikus olev väärtus on arv, ja seejärel testime, kas see arv on suurem kui 10.
12345678910 | Sub HighlightRangeOfCells ()Dim rng As RangeIga vahemiku kohta ("A1: A10")Kui IsNumeric (rng.Value) SiisKui rng.Väärtus> 10 Siisrng.Interior.Värv = vbPunaneLõpp KuiLõpp KuiJärgmine rngEnd Sub |
Tõstke lahtr välja tingimusliku vormindusega
Samuti saame kasutada VBA -d, et rakendada lahtrile esiletõstmiseks tingimusvormingut. Allolevas näites rakendatakse tingimuste vormindamist vahemiku igale lahtrile. Nagu ülaltoodud näites, katsetame kõigepealt, kas lahtril on arvväärtus, ja rakendame seejärel tingimusvormingu.
12345678910 | AlamhulkConditionalFormatting ()Dim rng As RangeIga vahemiku kohta ("A1: A10")Kui IsNumeric (rng.Value) Siisrng.FormatConditions.Add Type: = xlCellValue, Operaator: = xlGreater, Valem1: = "= 10"rng.FormatConditions (1). Sisemine.Värv = vbPunanerng.FormatConditions (1) .StopIfTrue = ValeLõpp KuiJärgmine rngEnd Sub |
Tõstke lahter esile, kui valik muutub
Me saame muuta lahtri esiletõstmise dünaamiliseks, kui lahtri kursor liigub praegusel töölehel, kasutades sündmust Worksheet_Change. Allolevas näites eemaldatakse lehe kõik esiletõstmised (välja arvatud tingimusliku vormindamise korral) ja aktiivne element tõstetakse punaseks (ColorIndex = 3).
1234 | Privaatne alamlehe_valikActiveSheet.Cells.Interior.ColorIndex = xlColorIndexNoneTarget.Interior.ColorIndex = 3End Sub |