„Microsoft Excel“ leidžia jums taikyti sąlyginęformatavimas į ląsteles. Jei langelio vertė atitinka tam tikras jūsų nustatytas taisykles, sąlyginio formatavimo funkcija pakeis langelio teksto spalvą, užpildymo spalvą arba abi. Tai yra pagrindinė funkcija, veikianti tiesiai iš dėžutės, tačiau, jei norite užrakinti langelius pagal spalvą, jums reikia šiek tiek VBA scenarijaus, kad tai padarytumėte.
Norėdami pakeisti, galite naudoti sąlyginį formatavimąlangelio spalva arba galite rankiniu būdu pakeisti spalvą į bet ką, ko norite. VBS scenarijus nepriklauso nuo sąlyginio formatavimo, kad būtų galima užrakinti langelius. Tereikia ląstelės, kad ji būtų spalvota.
Užrakinti ląsteles pagal spalvą
Prieš kurdami VBA scenarijų, turite žinoti langelio, į kurį nurodote, spalvą. VBA nemato spalvų, kaip yra; tai nurodo juos per spalvų kodus.
Pirmas dalykas, kurį jums reikia padaryti, yra atiduoti savo ląstelęspalva. Mes praleidome pagrindinę geltoną spalvą, kurią pakankamai lengva nurodyti. Jei naudojate kitokią spalvą, naudodamiesi šia svetaine raskite, kurį spalvų kodą naudoti. Spalvos kodas, kurį naudojame geltonai, yra # FFFF00.
„Excel“ programoje įgalinkite skirtuką „Kūrėjas“ ir perjunkite į jį. Spustelėkite mygtuką „Visual Basic“ ir įklijuokite šiuos dalykus į „šį darbalapį“. Šį scenarijų parašė „Superuser“ vartotojas Dave'as.
Sub WalkThePlank() dim colorIndex as Integer colorIndex = FFFF00 Dim rng As Range For Each rng In ActiveSheet.UsedRange.Cells Dim color As Long color = rng.Interior.ColorIndex If (color = colorIndex) Then rng.Locked = True else rng.Locked = false End If Next rng End Sub

Vykdykite scenarijų, ir jis užrakins visas jūsų pasirinktos spalvos langelius. Šioje scenarijaus eilutėje bus nustatytas jūsų spalvos spalvos kodas;
colorIndex = FFFF00
FFFF00 rodo geltoną spalvą ir tai yraką reikia pakeisti bet kokiu spalvos kodu, kuris tinka jūsų naudojamai spalvai. Turėtume paminėti, kad geriausia naudoti spalvas. Pridėję tai, turėsite išsaugoti „Excel“ failą kaip makrokomandą įgalintą failą, kitaip „VBA“ scenarijus neišsaugos.
Užrakintas langelius galima lengvai atrakinti. Užraktas nėra slaptažodžiu apsaugotas užraktas, kuris neleidžia kitiems žmonėms pakeisti langelio vertės, jei jie nori. Tai yra įprasta užraktas, kuris apsaugo nuo atsitiktinių failo pakeitimų.
Komentarai