Как сделать переключатель в excel?

Переключатель — элемент управления формы в MS EXCEL

Элементы Переключатель позволяют делать выбор значений из заранее заданного диапазона 1, 2, 3, . Этот элемент имеет много общего с Флажком.

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

  • В MS EXCEL 2007 это можно сделать через меню Кнопка офис/ Параметры Excel/ Основные/ Показывать вкладку Разработчик на ленте .
  • В MS EXCEL 2010 это можно сделать так: Откройте вкладку Файл; Нажмите кнопку Параметры; Нажмите кнопку Настроить ленту; Выберите команду Настройка ленты и в разделе Основные вкладки установите флажок Разработчик.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читать еще:  Как сделать окна каскадом в excel?

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

Как было сказано выше, все Элементы управления формы возвращают значение. Это значение помещается в ячейку определенную пользователем. Чтобы связать Элемент управления с ячейкой, кликните на него ПРАВОЙ клавишей мыши, в появившемся контекстном меню выберите Формат объекта. Появится диалоговое окно, выберите вкладку Элемент управления (если такая вкладка отсутствует, то Вы вставили Элемент 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. Также имя можно изменить в Области выделения ( Главная / Редактирование/ Найти и выделить/ Область выделения ).

Читать еще:  Как сделать экспорт в excel?

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

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

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

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

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

Выбор элемента с помощью переключателя

Выбор элемента с помощью переключателя

Как в жизни, так и в программном обеспечении, есть много взаимоисключающих вариантов. Покупая мороженое, вы выбираете либо с изюмом, либо с орехами, либо в фруктами, но никогда не все три сразу. Покупая платье или брюки, вы всегда покупаете только те вещи, которые подходят вам по размеру. А когда вы собираетесь жениться на Анне, о других претендентках вы не думаете (Анна должна этому радоваться!).

В Windows для изображения взаимно исключающих вариантов выбора используются так называемые переключатели. Это небольшие круглые кнопки, которые работают как нажимные кнопки на радиоприемниках в автомобилях. Одновременно можно слушать только одну радиостанцию. На рис. 10.19 показан типичный набор переключателей.

Рис. 10.19. Переключатели в действии

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

Не беспокойтесь о том, как создать группу переключателей. Все, что вам необходимо сделать, — это разместить кнопки в одном месте в форме. VBA автоматически объединит их в группу. При запуске программы будет выбран только один переключатель.

А что это за странные слова: переключатели должны быть размещены «в одном месте формы»? Конечно, это не официальная терминология VBA, но можно сказать следующее: одна часть формы является самой формой. Каждая добавленная вами рамка элемента управления создаст другую часть формы. И каждая вкладка элемента управления, состоящего из нескольких вкладок, также является отдельной частью формы (о элементах управления, состоящих из нескольких вкладок, которые создаются для ноутбуков и которые похожи на обычные диалоговые окна Windows, я расскажу в главе 19). Можно разместить рамку внутри другой рамки или на вкладке элемента управления, состоящего из нескольких вкладок. Каждая вложенная рамка занимает свою часть формы.

Если в форме есть несколько рамок, VBA рассматривает переключатели, которые не находятся внутри любой рамки, как одну группу, а переключатели, находящиеся в рамке, — как отдельную группу. На рис. 10.20 видно, что я имею в виду.

Читать еще:  Как сделать сумму прописью в excel 2016?

Рис. 10.20. Три отдельные группы переключателей

Для того чтобы выбрать переключатель, достаточно просто щелкнуть на нем. Однако обычно после выбора переключателя немедленно ничего не происходит. Диалоговое окно останется открытым. Это позволит пользователю еще раз подумать и, может быть, выбрать другой переключатель. И только после того, как пользователь щелкнет на кнопке ОК, он подтвердит свой выбор.

Перед программистом стоит задача: как понять, какой переключатель выбран? Для этого вы должны проверить значение свойства Va l ue для каждого переключателя в группе. Правда, есть способ обойти это. Для этого можно воспользоваться инструкцией If. . .ElseIf:

If OptionEuttonl.Value = True Then

ElseIf OptionButton2.Value = True Then

ElseIf OptionButton3.Value = True Then

Переключатели полезны, когда приходится иметь дело с большим количеством взаимоисключающих вариантов. Однако, когда необходимо выбрать несколько вариантов, лучше воспользоваться флажками или кнопками с фиксацией. Флажки и кнопки с фиксацией используются для выбора одного из пары противоположных вариантов, например Yes (Да) или No (Нет). On или Off, True или False и Stay или Leave. На практике отличие между флажком и кнопкой с фиксацией состоит в том, как они выглядят.

* Флажок — это маленький квадратик, в котором появляется галочка, если выбран параметр Yes, On или True. (Если квадратик пустой, значит флажок сброшен.)

* Кнопка с фиксацией похожа на обычную кнопку. Единственное отличие состоит в том, что, когда вы щелкаете на ней, она остается нажатой.

На рис. 10.21 показаны несколько флажков и кнопок с фиксацией.

Рис. 10.21. Флажки и кнопки с фиксацией

Флажки часто объединяют в группы для того, чтобы составить список не взаимоисключающих вариантов выбора. На рис. 10.22 приведен пример флажков.

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

Рис. 10.22. Устанавливать и сбрасывать флажки можно независимо

Как обычно, свойство Value содержит информацию, относящуюся к выбору параметров пользователем. Если флажок установлен, свойство Value равно True, если флажок сброшен, свойство Value равно False. Такая же ситуация и с кнопками с фиксацией: свойство Value равно True; если кнопка нажата. В противном случае свойство Value равно False. Для выбора параметров можно воспользоваться следующим кодом:

If tglLightSwitch.Value = True Then

[ не всегда код автора безупречен…

If tglLightSwitch.Value = True Then

If tglLightSwitch.Value Then

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

Ссылка на основную публикацию
Adblock
detector