- - Slik låser du celler basert på farger i Microsoft Excel

Slik låser du celler basert på farger i Microsoft Excel

Microsoft Excel lar deg bruke betingetformatering til celler. Hvis verdien i en celle oppfyller visse regler du har angitt, endrer funksjonen for betinget formatering fargen på teksten i cellen, eller fyllfargen, eller begge deler. Dette er en grunnleggende funksjon som fungerer rett ut av boksen, men hvis du vil låse celler basert på farge, trenger du et lite VBA-skript for å gjøre det.

Du kan bruke betinget formatering for å endrefarge på en celle, eller du kan endre fargen manuelt til hva du vil. VBS-skriptet er ikke avhengig av betinget formatering for å låse celler. Den trenger bare at en celle skal farges.

Lås celler basert på farge

Før du kan opprette et VBA-skript, må du kjenne fargen på cellen du viser til. VBA ser ikke farger som de er; den refererer dem via fargekodene.

Det første du trenger å gjøre er å gi cellen dinen farge. Vi har gått med den grunnleggende gule som er enkel nok til å referere til. Hvis du går med en annen farge, kan du bruke dette nettstedet for å finne hvilken fargekode du trenger å bruke. Fargekoden vi bruker til gult er # FFFF00.

I Excel aktiverer du kategorien Utvikler, og bytter deretter til den. Klikk på Visual Basic-knappen og lim inn følgende i 'Dette arbeidsarket'. Dette skriptet ble skrevet av Superuser-brukeren Dave.

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

Kjør skriptet, så låser det alle cellene som er fargen du angir. Fargekoden du fant for fargen din, vil bli satt på denne linjen i skriptet;

colorIndex = FFFF00

FFFF00 representerer den gule fargen og det er denhva du trenger å erstatte med hvilken fargekode som gjelder for fargen du bruker. Vi bør nevne at det er best å gå med en grunnfarge. Når du har lagt til dette, må du lagre Excel-filen din som en makroaktivert fil, eller VBA-skriptet vil ikke lagre.

De låste cellene kan enkelt låses opp. Låsen er ikke en passordbeskyttet lås, slik at andre ikke kan endre verdien på en celle hvis de vil. Det er en vanlig lås som forhindrer tilfeldige endringer i filen.

kommentarer