Microsoft Excel дозволяє застосовувати умовноформатування до комірок. Якщо значення в комірці відповідає певним встановленим вами правилам, функція умовного форматування змінить колір тексту в комірці, колір заливки або те і інше. Це основна функція, яка працює прямо з поля, однак, якщо ви хочете заблокувати комірки на основі кольору, для цього вам потрібно трохи сценарію VBA.
Ви можете використовувати умовне форматування для зміниколір клітини або ви можете вручну змінити колір на все, що завгодно. Сценарій VBS не залежить від умовного форматування для блокування комірок. Просто потрібна клітина, щоб її забарвити.
Блокування комірок на основі кольору
Перш ніж ви зможете створити сценарій VBA, вам слід знати колір комірки, на який ви посилаєтесь. VBA не бачить кольори такими, якими вони є; він посилається на них за допомогою своїх кольорових кодів.
Перше, що вам потрібно зробити, - це дати своїй камеріколір. Ми перейшли до основного жовтого, який досить простий для посилання. Якщо ви збираєтесь з іншим кольором, скористайтеся цим веб-сайтом, щоб знайти, який код кольору потрібно використовувати. Код кольору, який ми використовуємо для жовтого кольору, є # FFFF00.
У Excel увімкніть вкладку Developer і перейдіть на неї. Натисніть кнопку Visual Basic і вставте наступне у "Цей робочий лист". Цей сценарій написав користувач Superuser 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

Запустіть скрипт, і він заблокує всі комірки, які встановлені кольором. Код кольору, який ви знайшли для свого кольору, буде встановлений у цьому рядку у сценарії;
colorIndex = FFFF00
FFFF00 позначає жовтий колір і цещо потрібно замінити будь-яким кольоровим кодом, який застосовується до кольору, який ви використовуєте. Слід зазначити, що найкраще підходити до основного кольору. Коли ви додасте це, вам потрібно буде зберегти файл Excel як файл із підтримкою макросу, або сценарій VBA не збережеться.
Заблоковані комірки можна легко розблокувати. Блокування не є захищеним паролем блокуванням, що заважає іншим людям змінювати значення комірки, якщо вони хочуть. Це звичайний замок, який запобігає випадковим змінам у файлі.
Коментарі