Как связать флажок с ячейкой

Обновлено: 22.04.2024

Теперь вставить элемент управления можно через меню: Разработчик/ Элементы управления/ Вставить .


Обратите внимание, что в этом меню можно также вставить Элементы ActiveX, которые расположены ниже интересующих нас Элементов управления формы. У обоих типов есть одни и те же элементы Кнопка, Список, Флажок и т.п. Разница между ними следующая: чтобы использовать Элементы ActiveX необходимо использовать VBA, а Элементы управления формы можно напрямую привязать к ячейке на листе.

Флажок ( Checkbox ) как, впрочем и все другие Элементы управления формы, возвращает только 1 числовое значение. Если Флажок установлен, то он возвращает ИСТИНА, если Флажок снят - то ЛОЖЬ. См. файл примера лист Флажок .

Обзорную статью об элементах управления формы можно прочитать здесь .

Вставка Флажка

Через меню Разработчик/ Элементы управления/ Вставить выберем левой клавишей мыши элемент Флажок.


После этого выпадающее меню закроется, а курсор вместо обычного толстого крестика


превратится в тонкий крестик.


Выберите место на листе куда нужно вставить Флажок и нажмите левую клавишу мыши. На месте курсора будет установлен левый верхний угол прямоугольника, в котором содержится Флажок и его надпись. Граница прямоугольника будет выделена.


Выделение Флажка

После вставки Флажка он становится выделенным (см. рисунок выше). Если кликнуть в любом другом месте листа, то Флажок перестанет быть выделенным. Чтобы снова его выделить нужно кликнуть его ПРАВОЙ клавишей мыши (клик ЛЕВОЙ клавиши устанавливает или снимает Флажок ). После клика правой кнопкой также появляется контекстное меню, чтобы его убрать можно нажать ESC или кликнуть левой клавишей по Флажку .

Перемещение Флажка и изменение его размеров

Если навести курсор на выделенный прямоугольник Флажка (курсор примет форму 4-х направленных в разные стороны стрелок, см. рисунок выше), затем нажать и удерживать левую кнопку мыши, то можно переместить Флажок. Удерживая клавишу ALT можно выровнять Флажок по границам ячеек. Выделенный Флажок также можно перемещать стрелками с клавиатуры.

Если навести курсор на углы прямоугольника или на маленькие квадратики на границе, то можно изменить его размер.


Связываем Флажок с ячейкой

Как было сказано выше, все Элементы управления формы возвращают значение. Это значение помещается в ячейку определенную пользователем. Чтобы связать Элемент управления с ячейкой, кликните на него ПРАВОЙ клавишей мыши, в появившемся контекстном меню выберите Формат объекта.


Появится диалоговое окно, выберите вкладку Элемент управления (если такая вкладка отсутствует, то Вы вставили Элемент ActiveX, а не Элемент управления формы, об этом см. выше).


В поле Связь с ячейкой нужно ввести ссылку на ячейку. Свяжем наш Флажок с ячейкой А1 .


Нажмите ОК. Убедитесь, что Флажок не выделен. Пощелкайте левой клавишей мыши по Флажку . В ячейке А1 значение будет меняться с ИСТИНА на ЛОЖЬ и наоборот.

Существует другой способ связать Элемент управления и ячейку: Выделите правой клавишей мыши Элемент управления, в Строке формул введите =, затем кликните левой клавишей мыши на нужную ячейку и нажмите клавишу ENTER .


Чтобы изменить ячейку, с которой связан Элемент управления, достаточно перетащить эту ячейку, взяв за ее границу, в нужное место.

Одну ячейку можно связать с несколькими элементами управления, но имеет ли это смысл? Решать Вам.

Изменяем внешний вид Флажка

Чтобы изменить внешний вид Флажка, кликните на него ПРАВОЙ клавишей мыши, в появившемся контекстном меню выберите Формат объекта. Появится диалоговое окно, выберите вкладку Цвета и линии.


После несложной настройки можно сотворить вот такое чудо с Вашим Флажком .


Шрифт изменить не удастся (((.

Имя Элемента управления

У каждого Элемента управления есть имя. Чтобы его узнать нужно выделить Флажок, в Поле имя будет отображено его имя.


Отметим, что Имя Флажка и надпись на нем - совершенно 2 разные вещи, хотя они могут и совпадать.

Чтобы изменить имя Флажка - в Поле имя введите новое имя и нажмите клавишу ENTER . Также имя можно изменить в Области выделения ( Главная / Редактирование/ Найти и выделить/ Область выделения ).

Зачем нам знать его имя? Если Вы не планируете управлять Флажком из программы VBA, то имя может потребоваться только для настройки его отображения на листе. Об этом читайте ниже.

Прячем Флажок на листе

Включите Область выделения ( Главная / Редактирование/ Найти и выделить )


В Области выделения можно управлять отображением не только Элементов управления, но и других объектов на листе, например рисунков.

Нажмите на изображение глаза напротив имени объекта и объект исчезнет/ появится.


Использование Флажка

Так Флажок может придавать значение ячейки только ИСТИНА или ЛОЖЬ, то нам потребуются формулы, чтобы разнообразить применение Флажка .

Например, можно отображать разные надписи в зависимости от того установлен ли Флажок или нет.

=ЕСЛИ(A1;"Флажок установлен";"Флажок снят")


Также можно производить различные вычисления. Например, выводить сумму одного из 2-х диапазонов Е4:Е6 или F4:F6


Часто Флажок применяют для включения/ выключения заливки ячейки. Для этого нам придется использовать Условное форматирование .

Для ячеек В1:С1 создадим простое правило форматирования.


Теперь, когда Флажок установлен, эти ячейки будут выделены красным.

Элементы управления формы (Поле со списком, Флажок, Счетчик и др.) помогают быстро менять данные на листе в определенном диапазоне, включать и выключать опции, делать выбор и пр. В принципе, без них можно обойтись, но они делают управление данными на листе более наглядным и уменьшают вероятность ввода некорректных данных.

Для вставки элементов управления на лист необходимо отобразить вкладку Разработчик.

Теперь вставить элемент управления можно через меню: Разработчик/ Элементы управления/ Вставить .


Обратите внимание, что в этом меню можно вставить Элементы ActiveX, которые расположены ниже интересующих нас Элементов управления формы. У обоих типов есть одни и те же элементы Кнопка, Список, Флажок и т.п. Разница между ними следующая: чтобы использовать Элементы ActiveX необходимо использовать VBA, а Элементы управления формы можно напрямую привязать к ячейке на листе.

Для тех, кто не ранее не работал с Элементами управления формы, советуем подробно ознакомиться с ними в следующих статьях:

В этой статье рассмотрим более сложный пример совместного использования элементов управления и Условного форматирования .

Пример

Разберем конкретный пример применения сразу нескольких Элементов управления. В файле примера с помощью элементов управления показано как пользователь может отредактировать значения в таблице (диапазон F9:K12 ).


С помощью одного из 3-х элементов управления Поле со списком, Список и Счетчик , пользователь может выбрать столбец таблицы (год) . Нужный элемент управления выбирается с помощью группы Переключателей . Название выбранного элемента подсвечивается серым цветом (см. A8:B8 на рис. выше). Выбранный год выделяется в таблице Условным форматированием темно серым цветом (см. H9 :H12 на рис. выше). Отображение этого выделения регулируется Флажком (фон флажка - красный). Полосами прокрутки можно редактировать Цену и Количество в выбранном году, но только в определенном диапазоне. Теперь – подробнее.

Переключатели

На листе использовано 3 Переключателя объединенных в Группу . Каждому Переключателю соответствует определенный элемент управления: Поле со списком, Список, Счетчик .

Для объединения Элементов в группу помещаем на лист Элемент управления Группа (через меню Разработчик/ Элементы управления/ Вставить ). В рамках группы создаем 3 переключателя (также через меню Разработчик/ Элементы управления/ Вставить ) и связываем их все с одной ячейкой С2 (выделив элемент управления, правой клавишей вызываем контекстное меню, Формат объекта …, вкладка Элемент управления ).


Удерживая клавишу CTRL выделяем 3 переключателя и элемент Группа , вызываем правой клавишей мыши контекстное меню и выбираем Группировка/ Группировать . Теперь при выборе одного из трех Переключателей в Группе , в ячейке С2 будет выводиться значение 1, 2 или 3.

Поле со списком

Теперь вставим элемент управления Поле со списком . Вставить элемент можно через меню: Разработчик/ Элементы управления/ Вставить . В ячейках столбца М введем несколько значений лет: 2009, 2010, 2011, 2012, 2013. Эти значения будут использованы в элементе Поле со списком .

  • выделяем диапазон М9:М12;
  • нажимаем Формулы/ Определенные имена/ Присвоить имя ;
  • в поле Имя вводим Список .

Теперь свяжем элемент управления с данными на листе. Для этого:

  • выделите элемент управления Поле со списком ;
  • правой клавишей вызовите его контекстное меню, затем Формат объекта… , вкладка Элемент управления ;
  • в поле Формировать список по диапазону вводим Список (вместо ссылки на ячейку мы ввели ссылку на определенное Имя !). Конечно, вместо имени можно было указать просто ссылку на диапазон;
  • свяжем элемент с ячейкой $C$8 . В этой ячейке будет выводится порядковый номер выбранного элемента списка, т.е. если выберем 2009 , то выведется 1, т.к. это первый элемент в списке. Для дальнейших целей нам проще использовать именно год, а не его порядковый номер. Для этого в ячейку D8 введем формулу =C8+2008 .

Список

Вставляем на лист элемент Список . Аналогично предыдущему элементу связываем его с ячейкой $C$13 и формируем список на основе того же Именованного диапазона Список . В ячейку D13 введем формулу =C13+2008 .

Счётчик

Вставляем на лист элемент Счетчик . Определяем минимальное значение 2009 , максимальное – 2013 , шаг 1 . Связываем элемент с ячейкой $C$17 . В D17 введем формулу =С17 , т.к. элемент Счетчик в нашем случае возвращает значение года.


Чтобы определить значение какого элемента ( поле со списком, список или счетчик ) является активным в настоящий момент, в ячейке E9 введем формулу: =ЕСЛИ(C2=1;D8;ЕСЛИ(C2=2;D13;D17)) Как мы помним, значение в ячейке С2 определяется Группой переключателей .

Полоса прокрутки

Вставляем на лист элемент Полоса прокрутки . Этим элементом мы будем изменять ячейку на пересечении строки Количество (строка 10) и столбца выбранного года. Значения ячейки будет меняться в диапазоне от 0 до 1000. Но как определить эту ячейку?

Создадим Именованную формулу СмещГода для определения позиции выбранного года в диапазоне лет G 9: K 9 . Нажимаем Формулы/ Определенные имена/ Присвоить имя , в поле Имя вводим СмещГода , в поле диапазон вводим формулу =ПОИСКПОЗ($E$9; $G$9:$K$9;0) Если выбран 2009 , то формула вернет 1.

Для определения ячейки строки Количество , соответствующую выбранному году используем формулу =СМЕЩ($F$10;0;СмещГода) . Формула вернет диапазон, состоящий из одной ячейки.

В поле Связь с ячейкой элемента Полоса прокрутки нельзя ввести формулу, но можно, как мы уже видели, ввести Имя . Создадим Именованную формулу Количество , в поле Диапазон укажем формулу =СМЕЩ($F$10;0;СмещГода) . Теперь в поле Связь с ячейкой элемента полоса прокрутки введите Количество .


Аналогичные манипуляции проделайте с полосой прокрутки для Цены . Для этого необходимо создать Именованную формулу Цена , где в поле Диапазон указать формулу =СМЕЩ($F$11;0;СмещГода) .

Флажок

При выборе пользователем текущего года, в таблице с данными ( G9:K12 ) соответствующий столбец будет закрашиваться серым фоном. Для выделения столбца выбранного года используем Условное форматирование .

Сначала вставим на лист элемент Флажок . Этим элементом мы будем включать и выключать выделение в таблице столбца выбранного года. Элемент свяжите с ячейкой $G$2 . Если флажок снят, то в этой ячейке будет ЛОЖЬ (этому значению соответствует 0), если установлен, то ИСТИНА (этому значению соответствует 1).

Для настройки Условного форматирования выделим диапазон G9:K12 . Так как формула в Условном форматировании будет содержать относительную ссылку , то убедимся, что после выделения диапазона активной ячейкой является G9 (т.е. диапазон надо выделять начиная именно с нее. Подсказкой служит поле Имя , находящееся слева от Строки формул . После выделения диапазона оно должно содержать G 9 ).

  • вызовите инструмент Условное форматирование ( Главная/ Стили/ Условное форматирование/ Создать правило );
  • выберите Использовать формулу для определения форматируемых ячеек;
  • в поле « Форматировать значения, для которых следующая формула является истинной » введите =И(СТОЛБЕЦ(G9)=СмещГода+6;$G$2) Формула примет значение ИСТИНА, когда выполнится одновременно 2 условия:
  • значение выражения ( СмещГода (изменяется от 1 до 5 (т.е. от 2009 до 2013 года) + 6) совпадет с номером текущего столбца (7, т.е. 2009 год);
  • Флажок Условное форматирование установлен.
  • выберите требуемый формат, например, серый цвет заливки;
  • нажмите ОК.

Тестируем

  • убедимся, что флажок Условное форматирование установлен;
  • выберем переключатель Список ;
  • в элементе управления Список выберем 2010;
  • убедимся, что столбец 2010 выделен серым;
  • Полосой прокрутки изменим количество в столбце 2010.

Результат показан на рисунке.


К сожалению, у элементов управления формы Флажок, Поле со списком и Список нет возможности отформатировать отображаемый шрифт. Зато это можно сделать у элементов ActiveX ( Разработчик/ Элементы управления/ Вставить ). Правда, для работы с этими элементами требуется писать программу на VBA.

Теперь вставить элемент управления можно через меню: Разработчик/ Элементы управления/ Вставить .


Обратите внимание, что в этом меню можно также вставить Элементы ActiveX, которые расположены ниже интересующих нас Элементов управления формы. У обоих типов есть одни и те же элементы Кнопка, Список, Флажок и т.п. Разница между ними следующая: чтобы использовать Элементы ActiveX необходимо использовать VBA, а Элементы управления формы можно напрямую привязать к ячейке на листе.

Полоса прокрутки ( Scroll Bar ) как, впрочем и все другие Элементы управления формы, возвращает только 1 числовое значение. См. файл примера .

Обзорную статью обо всех элементах управления формы можно прочитать здесь .

Вставка Переключателя

Через меню Разработчик/ Элементы управления/ Вставить выберем левой клавишей мыши элемент Переключатель .


После этого выпадающее меню закроется, а курсор вместо обычного толстого крестика


превратится в тонкий крестик.


Кликнув левой клавишей мыши в нужное место на листе, элемент Переключатель будет помещен на лист.


От одного переключателя на листе нет никакого толка, т.к. он должен что-то переключать. Поэтому добавим еще 2 переключателя.


Выделение Переключателей

Чтобы выделить Переключатель нажмите и удерживайте клавишу CTRL , затем кликните левой клавишей на Переключатель . Если продолжать удерживать CTRL можно выделить все 3 Переключателя .


Выравнивание Переключателей

Выровнять Переключатели по левому краю, выделите их, затем нажмите кнопку меню Выровнять по левому краю ( Формат/ Упорядочить/ Выровнять ).



Переключатели выровняются по левому краю, но расстояние между ними будет различным.

Опять выделите Переключатели и нажмите кнопку меню Распределить по вертикали ( Формат/ Упорядочить/ Выровнять ).


При желании Переключатели можно сгруппировать (выделите их, нажмите на них правой клавишей мыши, в контекстном меню выберите Группировать/ Группировать ).

Перемещение Переключателей и изменение их размеров

Если навести курсор на выделенный Переключатель (курсор примет форму 4-х направленных в разные стороны стрелок), затем нажать и удерживать левую кнопку мыши, то можно его переместить. Удерживая клавишу ALT можно выровнять Переключатель по границам ячеек. Выделенный Переключатель также можно перемещать стрелками с клавиатуры.

Если навести курсор на углы прямоугольника или на маленькие квадратики на границе, то можно изменить его размер.

Связываем Переключатель с ячейкой

Как было сказано выше, все Элементы управления формы возвращают значение. Это значение помещается в ячейку определенную пользователем. Чтобы связать Элемент управления с ячейкой, кликните на него ПРАВОЙ клавишей мыши, в появившемся контекстном меню выберите Формат объекта. Появится диалоговое окно, выберите вкладку Элемент управления (если такая вкладка отсутствует, то Вы вставили Элемент ActiveX, а не Элемент управления формы, об этом см. выше).

В поле Связь с ячейкой нужно ввести ссылку на ячейку. Свяжем наши Переключатели с ячейкой А1 .


Как только мы свяжем первый Переключатель с ячейкой, все остальные автоматически свяжутся с этой же ячейкой. При добавлении новых Переключателей на этот лист, они также будут связываться с этой ячейкой.

В нашем случае (3 Переключателя ) в ячейке А1 будет выводится значение 1, если выбран первый Переключатель , 2, если выбран второй и 3, если третий.


Существует и другой способ связать Элемент управления и ячейку: выделите правой клавишей мыши Элемент управления, в Строке формул введите =, затем кликните левой клавишей мыши на нужную ячейку, нажмите клавишу ENTER . Чтобы изменить ячейку, с которой связан Элемент управления, достаточно перетащить эту ячейку в нужное место, взяв за ее границу.

Чтобы организовать 2 независимых группы Переключателей , необходимо использовать Элемент управления формы - Группа . Сначала разместите на листе две Группы , затем поместите на них требуемое количество Переключателей , затем свяжите по одному из Переключателей из каждой группы с разными ячейками на листе (см. лист Группа в файле примера ).


Примечание : Использовать только 2 Переключателя на листе не имеет смысла - их функциональность эквивалентна элементу Флажок , а затрат на их создание в 2 раза больше. Флажок возвращает ИСТИНА или ЛОЖЬ, а 2 Переключателя - 1 или 2. Хотя, это, безусловно, дело вкуса.

Использование Переключателей

Переключатели часто используются для выбора опций или параметров вычислений. Например, при планировании планов продаж можно рассчитать объемы продаж по трем сценариям "Базовый", "Умеренный", "Оптимистичный", каждый из которых предусматривает свой рост продаж +5%, +10%, +20%.


Переключатели связаны с ячейкой А1 . Значения в ячейке (от 1 до 3) преобразуются в 5%, 10%, 20% с помощью формулы =ВЫБОР($A$1;5%;10%;20%) в ячейке Е7 .

Перерасчет планов продаж ведется с помощью формулы =B11*(1+$E$7)

Для выделения выбранного сценария в диапазоне С11:С16 использовано Условное форматирование .


Имя Элемента управления

У каждого Элемента управления есть имя. Чтобы его узнать нужно выделить Переключатель , в Поле имя будет отображено его имя. Чтобы изменить имя Переключателя - введите в Поле имя новое имя Переключателя и нажмите клавишу ENTER . Также имя можно изменить в Области выделения ( Главная / Редактирование/ Найти и выделить/ Область выделения ).

Зачем нам знать имя элемента управления? Если Вы не планируете управлять Переключателем из программы VBA, то имя может потребоваться только для настройки его отображения на листе. Об этом читайте ниже.

Прячем Переключатель на листе

Включите Область выделения ( Главная / Редактирование/ Найти и выделить )


В Области выделения можно управлять отображением не только Элементов управления, но и других объектов на листе, например рисунков.

Нажмите на изображение глаза напротив имени объекта и объект исчезнет/ появится. Например, скроем переключатели из второй группы.

Как связать или указать имя флажка в ячейке в Excel?

В некоторых случаях вам может потребоваться связать или указать название заголовка флажка для ячейки. Что вы можете сделать для этого? В этой статье будет представлен метод решения этой проблемы.

Свяжите или укажите имя флажка в ячейке с кодом VBA

Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!

Приведенный ниже код VBA поможет вам связать имя флажка с ячейкой в ​​Excel. Пожалуйста, сделайте следующее.

1. Установите и щелкните правой кнопкой мыши флажок, в котором необходимо указать имя заголовка для ячейки, затем щелкните Просмотреть код из контекстного меню. Смотрите скриншот:


2. в Microsoft Visual Basic для приложений окна, замените исходный код на приведенный ниже код VBA.

Код VBA: привязать имя флажка к ячейке

Внимание: В коде CheckBox1 - это имя флажка, на который вам нужно ссылаться, Sheet1 - это имя рабочего листа, содержащего флажок, а B2 - это ячейка назначения, с которой вы свяжете имя флажка. Пожалуйста, измените их по своему усмотрению.

3. нажмите другой + Q ключи вместе, чтобы закрыть Microsoft Visual Basic для приложений окно.

4. Выключите режим дизайна, нажав разработчик > Режим проектирования как показано ниже.


Затем имя заголовка флажка связывается с указанной ячейкой после установки флажка, как показано ниже:

Возможно, вы знаете, как изменить значение ячейки на основе флажка. Но знаете ли вы, как автоматически установить флажок на основе значения ячейки в Excel? Эта статья покажет вам, как этого добиться.

Установите флажок на основе значения ячейки с формулой

Предположим, вы хотите, чтобы флажок 1 устанавливался автоматически, когда значение в ячейке A1 равно «Test». Пожалуйста, сделайте следующее.

1. После установки флажка (Form Control) выберите его и свяжите с указанной ячейкой C2, введя = C2 в панель формул.

Для того, чтобы получить элемент управления ActiveX установите флажок, щелкните его правой кнопкой мыши и выберите Свойства из контекстного меню. И в Свойства диалоговом окне введите связанная ячейка в LinkedCell поле, а затем закройте диалоговое окно. Смотрите скриншот:


2. Выберите ячейку с линиями (C2), затем введите формулу. = ЕСЛИ (A2 = «Тест»; ИСТИНА; ЛОЖЬ) в панель формул, а затем нажмите Enter ключ.


Внимание: В формуле A2 и Test - это ячейка и значение ячейки, на основе которого вы должны установить флажок автоматически.

3. При вводе значения «Тест» в ячейку А1 соответствующий флажок будет установлен автоматически. Смотрите скриншот:


Примечание. В этой формуле не учитывается регистр.

Установите флажок на основе значения ячейки с кодом VBA

Вы можете запустить следующий код VBA, чтобы установить флажок на основе значения ячейки в Excel.

1. Щелкните правой кнопкой мыши Вкладка листа установите флажок в зависимости от значения ячейки, затем щелкните Просмотреть код из контекстного меню.

2. в Microsoft Visual Basic для приложений окна, скопируйте и вставьте приведенный ниже код VBA в окно кода.

Код VBA: установить флажок на основе значения ячейки

Внимание: В коде A2 и Test - это ячейка и значение ячейки, на основе которого вы должны установить флажок автоматически. Флажок 1 - это имя флажка.

3. Нажмите другой + Q клавиши, чтобы закрыть окно Microsoft Visual Basic для приложений.

При вводе значения «Тест» в ячейку A2 указанный флажок будет установлен автоматически.

Внимание: Этот код чувствителен к регистру.

Наконечник: Если вы хотите вставить несколько флажков в выбранный диапазон сразу, вы можете попробовать Флажки пакетной вставки полезности Kutools for Excel, или пакетная вставка нескольких кнопок выбора с Кнопки параметров пакетной вставки утилита. Кроме того, вы можете удалить сразу все флажки с помощью Флажки пакетного удаления утилита, как показано на скриншотах ниже. Ты можешь пойти в скачать Kutools for Excel! (30-дневная бесплатная пробная версия).

Читайте также: