Цей підручник покаже, як використовувати VBA для виділення клітинки або діапазону клітинок.
Умовне форматування - один із способів виділення клітинок у Excel. Ми також можемо використовувати VBA для виділення клітинок.
Виділіть клітинку
Щоб виділити клітинку у VBA, ми можемо використати просту процедуру, як показано нижче.
123 | Sub HighlightCell ()ActiveCell.Interior.Color = vbRedEnd Sub |
Виділіть діапазон клітинок
Так само ми можемо вибрати діапазон клітинок і виділити всі клітинки в діапазоні.
1234 | Sub HighlightRange ()Діапазон ("A1: A10"). ВиберітьSelection.Interior.Color = vbRedEnd Sub |
Виділити клітинки на основі їх значення
Щоб додати умову виділення комірки, ми можемо використовувати оператор IF для виділення комірки, якщо значення комірки вище певного значення, в даному випадку більше 10.
12345 | Sub HightlightCell_1Якщо ActiveCell.Value> 10, тоActiveCell.Interior.Color = vbRedЗакінчити ЯкщоEnd Sub |
Виділіть діапазон клітинок на основі значення комірки
Щоб перевірити значення в діапазоні клітинок, нам потрібно буде прокрутити кожну клітинку, встановити її значення, а потім відповідно виділити клітинку. У наведеному нижче прикладі ми спочатку встановимо, що значення, що зберігається в діапазоні, - це число, а потім перевіримо, чи це число більше 10.
12345678910 | Sub HighlightRangeOfCells ()Зменшити діапазон як діапазонДля кожного дзвінка в діапазоні ("A1: A10")Якщо IsNumeric (rng.Value) ТодіЯкщо rng.Value> 10 Тодіrng.Interior.Color = vbRedЗакінчити ЯкщоЗакінчити ЯкщоНаступний дзвінокEnd Sub |
Виділіть комірку з умовним форматуванням
Ми також можемо використовувати VBA для застосування умовного форматування до клітинки, щоб виділити клітинку. У наведеному нижче прикладі умовне форматування буде застосовано до кожної комірки діапазону. Як і у наведеному вище прикладі, спочатку ми перевіряємо, чи містить комірка числове значення, а потім застосовуємо умовне форматування.
12345678910 | Sub SetConditionalFormatting ()Зменшити діапазон як діапазонДля кожного дзвінка в діапазоні ("A1: A10")Якщо IsNumeric (rng.Value) Тодіrng.FormatConditions.Add Type: = xlCellValue, Оператор: = xlGreater, Formula1: = "= 10"rng.FormatConditions (1) .Interior.Color = vbRedrng.FormatConditions (1) .StopIfTrue = НеправдаЗакінчити ЯкщоНаступний дзвінокEnd Sub |
Виділіть клітинку при зміні виділення
Ми можемо зробити виділення клітинки динамічним, коли вказівник на клітинку переміщується на поточному аркуші за допомогою події Worksheet_Change. У наведеному нижче прикладі всі виділення на аркуші будуть видалені (за винятком умовного форматування), а активна клітинка буде виділена червоним кольором (ColorIndex = 3).
1234 | Private Sub Worksheet_SelectionChange (ByVal Target As Range)ActiveSheet.Cells.Interior.ColorIndex = xlColorIndexNoneTarget.Interior.ColorIndex = 3End Sub |