Як захистити або заблокувати значення комірок на основі кольору тла?
Припустимо, у мене є великий аркуш, і кілька комірок заповнені різними кольорами тла, тепер я хочу зафіксувати або захистити комірки на основі певного заповненого кольору, наприклад, заблокувати або захистити всі комірки червоним кольором. Чи є якісь методи для вирішення цього завдання в Excel?
Захистіть або заблокуйте значення комірок на основі кольору фону за допомогою коду VBA
Захистіть або заблокуйте значення комірок на основі кольору фону за допомогою коду VBA
Наприклад, я хочу заблокувати та захистити всі еритроцити, щоб інші користувачі не могли змінювати ці значення комірок, наступний код VBA може вирішити цю роботу за вас, зробіть так:
1. Утримуйте клавішу ALT + F11 ключі, щоб відкрити Microsoft Visual Basic для додатків вікна.
2. Клацання Insert > Модуліта вставте наступний код у Модулі Вікно
Код VBA: Захист або блокування значень комірок на основі кольору:
Sub lockcellsbycolor()
'Updateby Extendoffice
Dim colorIndex As Integer
colorIndex = 3
Dim xRg As Range
Application.ScreenUpdating = False
For Each xRg In ActiveSheet.UsedRange.Cells
Dim color As Long
color = xRg.Interior.colorIndex
If (color = colorIndex) Then
xRg.Locked = True
Else
xRg.Locked = False
End If
Next xRg
Application.ScreenUpdating = True
MsgBox "All specified color cells have been locked!", vbInformation, "Kutools for Excel"
End Sub
примітки: У наведеному вище коді номер 3 в колірний індекс = 3 Сценарій вказує червоні кольорові клітинки, які я хочу заблокувати, ви можете змінити їх на інший індекс кольору, який ви хочете заблокувати.
3. Потім натисніть F5 клавішу для запуску цього коду, і заблоковано лише клітинки червоного кольору, інші клітинки розблоковані в використовуваному діапазоні активного аркуша, див. знімок екрана:
4. Якщо ви хочете захистити їх від модифікації іншими користувачами, вам просто потрібно застосувати Захистити аркуш функція для захисту цього аркуша.
Поради: Щоб отримати номер індексу кольорів, ви можете застосувати таку функцію, яку визначає користувач:
Function GetColor(x As Range) As Integer
GetColor = x.Interior.ColorIndex
End Function
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!