Интерактивную формы в excel

Содержание

  • Применение инструментов заполнения
    • Способ 1: встроенный объект для ввода данных Excel
    • Способ 2: создание пользовательской формы
  • Вопросы и ответы

Форма в Microsoft Excel

Для облегчения ввода данных в таблицу в Excel можно воспользоваться специальными формами, которые помогут ускорить процесс заполнения табличного диапазона информацией. В Экселе имеется встроенный инструмент позволяющий производить заполнение подобным методом. Также пользователь может создать собственный вариант формы, которая будет максимально адаптирована под его потребности, применив для этого макрос. Давайте рассмотрим различные варианты использования этих полезных инструментов заполнения в Excel.

Применение инструментов заполнения

Форма заполнения представляет собой объект с полями, наименования которых соответствуют названиям колонок столбцов заполняемой таблицы. В эти поля нужно вводить данные и они тут же будут добавляться новой строкой в табличный диапазон. Форма может выступать как в виде отдельного встроенного инструмента Excel, так и располагаться непосредственно на листе в виде его диапазона, если она создана самим пользователем.

Теперь давайте рассмотрим, как пользоваться этими двумя видами инструментов.

Способ 1: встроенный объект для ввода данных Excel

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

  1. Нужно отметить, что по умолчанию значок, который её запускает, скрыт и его нужно активировать. Для этого переходим во вкладку «Файл», а затем щелкаем по пункту «Параметры».
  2. Переход в параметры в Microsoft Excel

  3. В открывшемся окне параметров Эксель перемещаемся в раздел «Панель быстрого доступа». Большую часть окна занимает обширная область настроек. В левой её части находятся инструменты, которые могут быть добавлены на панель быстрого доступа, а в правой – уже присутствующие.

    В поле «Выбрать команды из» устанавливаем значение «Команды не на ленте». Далее из списка команд, расположенного в алфавитном порядке, находим и выделяем позицию «Форма…». Затем жмем на кнопку «Добавить».

  4. Добавление инструмента форма на панель быстрого доступа в Microsoft Excel

  5. После этого нужный нам инструмент отобразится в правой части окна. Жмем на кнопку «OK».
  6. Инструмент форма добавлен на панель быстрого доступа в Microsoft Excel

  7. Теперь данный инструмент располагается в окне Excel на панели быстрого доступа, и мы им можем воспользоваться. Он будет присутствовать при открытии любой книги данным экземпляром Excel.
  8. Инструмент форма отображается на панеле быстрого доступа в Microsoft Excel

  9. Теперь, чтобы инструмент понял, что именно ему нужно заполнять, следует оформить шапку таблицы и записать любое значение в ней. Пусть табличный массив у нас будет состоять из четырех столбцов, которые имеют названия «Наименование товара», «Количество», «Цена» и «Сумма». Вводим данные названия в произвольный горизонтальный диапазон листа.
  10. Шапка таблицы в Microsoft Excel

  11. Также, чтобы программа поняла, с каким именно диапазонам ей нужно будет работать, следует ввести любое значение в первую строку табличного массива.
  12. первое значение в таблице в Microsoft Excel

  13. После этого выделяем любую ячейку заготовки таблицы и щелкаем на панели быстрого доступа по значку «Форма…», который мы ранее активировали.
  14. Запуск формы в Microsoft Excel

  15. Итак, открывается окно указанного инструмента. Как видим, данный объект имеет поля, которые соответствуют названиям столбцов нашего табличного массива. При этом первое поле уже заполнено значением, так как мы его ввели вручную на листе.
  16. Форма открыта в Microsoft Excel

  17. Вводим значения, которые считаем нужными и в остальные поля, после чего жмем на кнопку «Добавить».
  18. Ввод значений в форму в Microsoft Excel

  19. После этого, как видим, в первую строку таблицы были автоматически перенесены введенные значения, а в форме произошел переход к следующему блоку полей, который соответствуют второй строке табличного массива.
  20. Значения перенесы в таблицу в Microsoft Excel

    Lumpics.ru

  21. Заполняем окно инструмента теми значениями, которые хотим видеть во второй строке табличной области, и снова щелкаем по кнопке «Добавить».
  22. Добавление второй строки в таблицу через форму в Microsoft Excel

  23. Как видим, значения второй строчки тоже были добавлены, причем нам даже не пришлось переставлять курсор в самой таблице.
  24. Вторая строка заполнена в таблице в Microsoft Excel

  25. Таким образом, заполняем табличный массив всеми значениями, которые хотим в неё ввести.
  26. Все значения в таблицу введены в Microsoft Excel

  27. Кроме того, при желании, можно производить навигацию по ранее введенным значениям с помощью кнопок «Назад» и «Далее» или вертикальной полосы прокрутки.
  28. Навигация по форме в Microsoft Excel

  29. При необходимости можно откорректировать любое значение в табличном массиве, изменив его в форме. Чтобы изменения отобразились на листе, после внесения их в соответствующий блок инструмента, жмем на кнопку «Добавить».
  30. Корректировка данных в форме в Microsoft Excel

  31. Как видим, изменение сразу произошло и в табличной области.
  32. Изменение произведено в таблице в Microsoft Excel

  33. Если нам нужно удалить, какую-то строчку, то через кнопки навигации или полосу прокрутки переходим к соответствующему ей блоку полей в форме. После этого щелкаем по кнопке «Удалить» в окошке инструмента.
  34. Удаление строки через форму в Microsoft Excel

  35. Открывается диалоговое окно предупреждения, в котором сообщается, что строка будет удалена. Если вы уверены в своих действиях, то жмите на кнопку «OK».
  36. Подтверждение удаления строки в Microsoft Excel

  37. Как видим, строчка была извлечена из табличного диапазона. После того, как заполнение и редактирование закончено, можно выходить из окна инструмента, нажав на кнопку «Закрыть».
  38. Закрытие формы в Microsoft Excel

  39. После этого для предания табличному массиву более наглядного визуального вида можно произвести форматирование.

Таблица отформатированв в Microsoft Excel

Способ 2: создание пользовательской формы

Кроме того, с помощью макроса и ряда других инструментов существует возможность создать собственную пользовательскую форму для заполнения табличной области. Она будет создаваться прямо на листе, и представлять собой её диапазон. С помощью данного инструмента пользователь сам сможет реализовать те возможности, которые считает нужными. По функционалу он практически ни в чем не будет уступать встроенному аналогу Excel, а кое в чем, возможно, превосходить его. Единственный недостаток состоит в том, что для каждого табличного массива придется составлять отдельную форму, а не применять один и тот же шаблон, как это возможно при использовании стандартного варианта.

  1. Как и в предыдущем способе, прежде всего, нужно составить шапку будущей таблицы на листе. Она будет состоять из пяти ячеек с именами: «№ п/п», «Наименование товара», «Количество», «Цена», «Сумма».
  2. Шапка таблицы создана в Microsoft Excel

  3. Далее нужно из нашего табличного массива сделать так называемую «умную» таблицу, с возможностью автоматического добавления строчек при заполнении соседних диапазонов или ячеек данными. Для этого выделяем шапку и, находясь во вкладке «Главная», жмем на кнопку «Форматировать как таблицу» в блоке инструментов «Стили». После этого открывается список доступных вариантов стилей. На функционал выбор одного из них никак не повлияет, поэтому выбираем просто тот вариант, который считаем более подходящим.
  4. Создание умной таблицы в Microsoft Excel

  5. Затем открывается небольшое окошко форматирования таблицы. В нем указан диапазон, который мы ранее выделили, то есть, диапазон шапки. Как правило, в данном поле заполнено все верно. Но нам следует установить галочку около параметра «Таблица с заголовками». После этого жмем на кнопку «OK».
  6. Окошко форматирования таблицы в Microsoft Excel

  7. Итак, наш диапазон отформатирован, как «умная» таблица, свидетельством чему является даже изменение визуального отображения. Как видим, помимо прочего, около каждого названия заголовка столбцов появились значки фильтрации. Их следует отключить. Для этого выделяем любую ячейку «умной» таблицы и переходим во вкладку «Данные». Там на ленте в блоке инструментов «Сортировка и фильтр» щелкаем по значку «Фильтр».
    Отключение фильтра через вкладку Данные в Microsoft Excel

    Существует ещё один вариант отключения фильтра. При этом не нужно даже будет переходить на другую вкладку, оставаясь во вкладке «Главная». После выделения ячейки табличной области на ленте в блоке настроек «Редактирование» щелкаем по значку «Сортировка и фильтр». В появившемся списке выбираем позицию «Фильтр».

  8. Отключение фильтра через вкладку Главная в Microsoft Excel

  9. Как видим, после этого действия значки фильтрации исчезли из шапки таблицы, как это и требовалось.
  10. Фильтр снят в Microsoft Excel

  11. Затем нам следует создать саму форму ввода данных. Она тоже будет представлять собой своего рода табличный массив, состоящий из двух столбцов. Наименования строк данного объекта будут соответствовать именам столбцов основной таблицы. Исключение составляют столбцы «№ п/п» и «Сумма». Они будут отсутствовать. Нумерация первого из них будет происходить при помощи макроса, а расчет значений во втором будет производиться путем применения формулы умножения количества на цену.

    Второй столбец объекта ввода данных оставим пока что пустым. Непосредственно в него позже будут вводиться значения для заполнения строк основного табличного диапазона.

  12. Форма ввода данных на листе в Microsoft Excel

  13. После этого создаем ещё одну небольшую таблицу. Она будет состоять из одного столбца и в ней разместится список товаров, которые мы будем выводить во вторую колонку основной таблицы. Для наглядности ячейку с заголовком данного перечня («Список товаров») можно залить цветом.
  14. Таблица со списком товаров в Microsoft Excel

  15. Затем выделяем первую пустую ячейку объекта ввода значений. Переходим во вкладку «Данные». Щелкаем по значку «Проверка данных», который размещен на ленте в блоке инструментов «Работа с данными».
  16. Переход к проверке данных в Microsoft Excel

  17. Запускается окно проверки вводимых данных. Кликаем по полю «Тип данных», в котором по умолчанию установлен параметр «Любое значение».
  18. Окно проверки вводимых значений в Microsoft Excel

  19. Из раскрывшихся вариантов выбираем позицию «Список».
  20. Выбор списка в окне проверки вводимых значений в Microsoft Excel

  21. Как видим, после этого окно проверки вводимых значений несколько изменило свою конфигурацию. Появилось дополнительное поле «Источник». Щелкаем по пиктограмме справа от него левой клавишей мыши.
  22. Переход к выбору источника в окне проверки вводимых значений в Microsoft Excel

  23. Затем окно проверки вводимых значений сворачивается. Выделяем курсором с зажатой левой клавишей мыши перечень данных, которые размещены на листе в дополнительной табличной области «Список товаров». После этого опять жмем на пиктограмму справа от поля, в котором появился адрес выделенного диапазона.
  24. Адрес диапазона внесен в поле в Microsoft Excel

  25. Происходит возврат к окошку проверки вводимых значений. Как видим, координаты выделенного диапазона в нем уже отображены в поле «Источник». Кликаем по кнопке «OK» внизу окна.
  26. Закрытие окна проверки вводимых значений в Microsoft Excel

  27. Теперь справа от выделенной пустой ячейки объекта ввода данных появилась пиктограмма в виде треугольника. При клике на неё открывается выпадающий список, состоящий из названий, которые подтягиваются из табличного массива «Список товаров». Произвольные данные в указанную ячейку теперь внести невозможно, а только можно выбрать из представленного списка нужную позицию. Выбираем пункт в выпадающем списке.
  28. Список со значениями в Microsoft Excel

  29. Как видим, выбранная позиция тут же отобразилась в поле «Наименование товара».
  30. Выбранная позиция отобразилась в ячейке в Microsoft Excel

  31. Далее нам нужно будет присвоить имена тем трем ячейкам формы ввода, куда мы будем вводить данные. Выделяем первую ячейку, где уже установлено в нашем случае наименование «Картофель». Далее переходим в поле наименования диапазонов. Оно расположено в левой части окна Excel на том же уровне, что и строка формул. Вводим туда произвольное название. Это может быть любое наименование на латинице, в котором нет пробелов, но лучше все-таки использовать названия близкие к решаемым данным элементом задачам. Поэтому первую ячейку, в которой содержится название товара, назовем «Name». Пишем данное наименование в поле и жмем на клавишу Enter на клавиатуре.
  32. Наименование первой ячейки в Microsoft Excel

  33. Точно таким же образом присваиваем ячейке, в которую будем вводить количество товара, имя «Volum».
  34. Наименование второй ячейки в Microsoft Excel

  35. А ячейке с ценой – «Price».
  36. Наименование третьей ячейки в Microsoft Excel

  37. После этого точно таким же образом даем название всему диапазону из вышеуказанных трех ячеек. Прежде всего, выделим, а потом дадим ему наименование в специальном поле. Пусть это будет имя «Diapason».
  38. присвоение наименования диапазону в Microsoft Excel

  39. После последнего действия обязательно сохраняем документ, чтобы названия, которые мы присвоили, смог воспринимать макрос, созданный нами в дальнейшем. Для сохранения переходим во вкладку «Файл» и кликаем по пункту «Сохранить как…».
  40. Сохранение книги в Microsoft Excel

  41. В открывшемся окне сохранения в поле «Тип файлов» выбираем значение «Книга Excel с поддержкой макросов (.xlsm)». Далее жмем на кнопку «Сохранить».
  42. Окно сохранения файла в Microsoft Excel

  43. Затем вам следует активировать работу макросов в своей версии Excel и включить вкладку «Разработчик», если вы это до сих пор не сделали. Дело в том, что обе эти функции по умолчанию в программе отключены, и их активацию нужно выполнять принудительно в окне параметров Excel.
  44. После того, как вы сделали это, переходим во вкладку «Разработчик». Кликаем по большому значку «Visual Basic», который расположен на ленте в блоке инструментов «Код».
  45. Переход в редактор макросов в Microsoft Excel

  46. Последнее действие приводит к тому, что запускается редактор макросов VBA. В области «Project», которая расположена в верхней левой части окна, выделяем имя того листа, где располагаются наши таблицы. В данном случае это «Лист 1».
  47. Редактор макросов в Microsoft Excel

  48. После этого переходим к левой нижней области окна под названием «Properties». Тут расположены настройки выделенного листа. В поле «(Name)» следует заменить кириллическое наименование («Лист1») на название, написанное на латинице. Название можно дать любое, которое вам будет удобнее, главное, чтобы в нем были исключительно символы латиницы или цифры и отсутствовали другие знаки или пробелы. Именно с этим именем будет работать макрос. Пусть в нашем случае данным названием будет «Producty», хотя вы можете выбрать и любое другое, соответствующее условиям, которые были описаны выше.

    В поле «Name» тоже можно заменить название на более удобное. Но это не обязательно. При этом допускается использование пробелов, кириллицы и любых других знаков. В отличие от предыдущего параметра, который задает наименование листа для программы, данный параметр присваивает название листу, видимое пользователю на панели ярлыков.

    Как видим, после этого автоматически изменится и наименование Листа 1 в области «Project», на то, которое мы только что задали в настройках.

  49. Изменение наименования листа в редакторе макросов в Microsoft Excel

  50. Затем переходим в центральную область окна. Именно тут нам нужно будет записать сам код макроса. Если поле редактора кода белого цвета в указанной области не отображается, как в нашем случае, то жмем на функциональную клавишу F7 и оно появится.
  51. Поле в редкторе макросов отобразилось в Microsoft Excel

  52. Теперь для конкретно нашего примера нужно записать в поле следующий код:


    Sub DataEntryForm()
    Dim nextRow As Long
    nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
    With Producty
    If .Range("A2").Value = "" And .Range("B2").Value = "" Then
    nextRow = nextRow - 1
    End If
    Producty.Range("Name").Copy
    .Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
    .Cells(nextRow, 3).Value = Producty.Range("Volum").Value
    .Cells(nextRow, 4).Value = Producty.Range("Price").Value
    .Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
    .Range("A2").Formula = "=IF(ISBLANK(B2), """", COUNTA($B$2:B2))"
    If nextRow > 2 Then
    Range("A2").Select
    Selection.AutoFill Destination:=Range("A2:A" & nextRow)
    Range("A2:A" & nextRow).Select
    End If
    .Range("Diapason").ClearContents
    End With
    End Sub

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

    Итак, первая строка:

    Sub DataEntryForm()

    «DataEntryForm» — это название самого макроса. Вы можете оставить его как есть, а можете заменить на любое другое, которое соответствует общим правилам создания наименований макросов (отсутствие пробелов, использование только букв латинского алфавита и т.д.). Изменение наименования ни на что не повлияет.

    Везде, где встречается в коде слово «Producty» вы должны его заменить на то наименование, которое ранее присвоили для своего листа в поле «(Name)» области «Properties» редактора макросов. Естественно, это нужно делать только в том случае, если вы назвали лист по-другому.

    Наименование для листа в Microsoft Excel

    Теперь рассмотрим такую строку:

    nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row

    Цифра «2» в данной строчке означает второй столбец листа. Именно в этом столбце находится колонка «Наименование товара». По ней мы будем считать количество рядов. Поэтому, если в вашем случае аналогичный столбец имеет другой порядок по счету, то нужно ввести соответствующее число. Значение «End(xlUp).Offset(1, 0).Row» в любом случае оставляем без изменений.

    Второй столбец таблицы в Microsoft Excel

    Далее рассмотрим строку

    If .Range("A2").Value = "" And .Range("B2").Value = "" Then

    «A2» — это координаты первой ячейки, в которой будет выводиться нумерация строк. «B2» — это координаты первой ячейки, по которой будет производиться вывод данных («Наименование товара»). Если они у вас отличаются, то введите вместо этих координат свои данные.

    Две первые ячейки таблицы с данными в Microsoft Excel

    Переходим к строке

    Producty.Range("Name").Copy

    В ней параметр «Name» означат имя, которое мы присвоили полю «Наименование товара» в форме ввода.

    Имя поля наименования товара в форме ввода в Microsoft Excel

    В строках


    .Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues
    .Cells(nextRow, 3).Value = Producty.Range("Volum").Value
    .Cells(nextRow, 4).Value = Producty.Range("Price").Value
    .Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value

    наименования «Volum» и «Price» означают названия, которые мы присвоили полям «Количество» и «Цена» в той же форме ввода.

    Наименование полей количество и цена в Microsoft Excel

    В этих же строках, которые мы указали выше, цифры «2», «3», «4», «5» означают номера столбцов на листе Excel, соответствующих колонкам «Наименование товара», «Количество», «Цена» и «Сумма». Поэтому, если в вашем случае таблица сдвинута, то нужно указать соответствующие номера столбцов. Если столбцов больше, то по аналогии нужно добавить её строки в код, если меньше – то убрать лишние.

    Колонки в таблице в Microsoft Excel

    В строке производится умножение количества товара на его цену:

    .Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value

    Результат, как видим из синтаксиса записи, будет выводиться в пятый столбец листа Excel.

    Колонка для вывода суммы в Microsoft Excel

    В этом выражении выполняется автоматическая нумерация строк:


    If nextRow > 2 Then
    Range("A2").Select
    Selection.AutoFill Destination:=Range("A2:A" & nextRow)
    Range("A2:A" & nextRow).Select
    End If

    Все значения «A2» означают адрес первой ячейки, где будет производиться нумерация, а координаты « — адрес всего столбца с нумерацией. Проверьте, где именно будет выводиться нумерация в вашей таблице и измените данные координаты в коде, если это необходимо.

    Столбец с нумерацией в Microsoft Excel

    В строке производится очистка диапазона формы ввода данных после того, как информация из неё была перенесена в таблицу:

    .Range("Diapason").ClearContents

    Не трудно догадаться, что («Diapason») означает наименование того диапазона, который мы ранее присвоили полям для ввода данных. Если вы дали им другое наименование, то в этой строке должно быть вставлено именно оно.

    Наименование полей для ввода данных в Microsoft Excel

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

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

  53. Код в редакторе макросов в Microsoft Excel

  54. После этого возвращаемся на лист Excel. Теперь нам следует разместить кнопку, которая будет активировать созданный макрос. Для этого переходим во вкладку «Разработчик». В блоке настроек «Элементы управления» на ленте кликаем по кнопке «Вставить». Открывается перечень инструментов. В группе инструментов «Элементы управления формы» выбираем самый первый – «Кнопка».
  55. Выбор элемента управления в Microsoft Excel

  56. Затем с зажатой левой клавишей мыши обводим курсором область, где хотим разместить кнопку запуска макроса, который будет производить перенос данных из формы в таблицу.
  57. Указание границ кнопки в Microsoft Excel

  58. После того, как область обведена, отпускаем клавишу мыши. Затем автоматически запускается окно назначения макроса объекту. Если в вашей книге применяется несколько макросов, то выбираем из списка название того, который мы выше создавали. У нас он называется «DataEntryForm». Но в данном случае макрос один, поэтому просто выбираем его и жмем на кнопку «OK» внизу окна.
  59. Окно назначения макроса объекту в Microsoft Excel

  60. После этого можно переименовать кнопку, как вы захотите, просто выделив её текущее название.
    Переименовывание кнопки в Microsoft Excel

    В нашем случае, например, логично будет дать ей имя «Добавить». Переименовываем и кликаем мышкой по любой свободной ячейке листа.

  61. Кнопка переименована в Microsoft Excel

  62. Итак, наша форма полностью готова. Проверим, как она работает. Вводим в её поля необходимые значения и жмем на кнопку «Добавить».
  63. Ввод данных в форму в Microsoft Excel

  64. Как видим, значения перемещены в таблицу, строке автоматически присвоен номер, сумма посчитана, поля формы очищены.
  65. Значения первой строки внесены в таблицу в Microsoft Excel

  66. Повторно заполняем форму и жмем на кнопку «Добавить».
  67. Повторный ввод данных в форму в Microsoft Excel

  68. Как видим, и вторая строка также добавлена в табличный массив. Это означает, что инструмент работает.

Вторая строка добавлена в таблицу в Microsoft Excel

Читайте также:
Как создать макрос в Excel
Как создать кнопку в Excel

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

Интерактивная диаграмма

Качественная визуализация большого объема информации – это почти всегда нетривиальная задача, т.к. отображение всех данных часто приводит к перегруженности диаграммы, ее запутанности и, в итоге, к неправильному восприятию и выводам.

Вот, например, данные по курсам валют за несколько месяцев:

interactive-chart1.png

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

  • двигаться по оси времени вперед-назад в будущее-прошлое
  • приближать-удалять отдельные области диаграммы для подробного изучения деталей графика
  • включать-выключать отображение отдельных валют на выбор

Выглядеть это может примерно так:

interactive-chart.gif

Нравится? Тогда поехали…

Шаг 1. Создаем дополнительную таблицу для диаграммы

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

interactive-chart2.png

В Excel 2007/2010 к созданным диапазонам можно применить команду Форматировать как таблицу (Format as Table) с вкладки Главная (Home):

interactive-chart3.png

Это даст нам следующие преимущества:

  • Любые формулы в таких таблицах автоматически транслируются на весь столбец – не надо «тянуть» их вручную до конца таблицы
  • При дописывании к таблице новых строк в будущем (новых дат и курсов) – размеры таблицы увеличиваются автоматически, включая корректировку диапазонов в диаграммах, ссылках на эту таблицу в других формулах и т.д.
  • Таблица быстро получает красивое форматирование (чересстрочную заливку и т.д.)
  • Каждая таблица получает собственное имя (в нашем случае – Таблица1 и Таблица2), которое можно затем использовать в формулах.

Подробнее про преимущества использования подобных Таблиц можно почитать тут.

Шаг 2. Добавляем флажки (checkboxes) для валют

В  Excel 2007/2010 для этого необходимо отобразить вкладку Разработчик (Developer), а в Excel 2003 и более старших версиях – панель инструментов Формы (Forms). Для этого:

  • В Excel 2003: выберите в меню Вид – Панели инструментов – Формы (View – Toolbars – Forms)
  • В Excel 2007: нажать кнопку Офис – Параметры Excel – Отобразить вкладку Разработчик на ленте (Office Button – Excel options – Show Developer Tab in the Ribbon)
  • В Excel 2010: Файл – Параметры – Настройка ленты – включить флаг Разрабочик (File – Options – Customize Ribbon – Developer)

На появившейся панели инструментов или вкладке Разработчик (Developer) в раскрывающемся списке Вставить (Insert) выбираем инструмент Флажок (Checkbox) и рисуем два флажка-галочки для включения-выключения каждой из валют:

interactive-chart4.png

Текст флажков можно поменять, щелкнув по ним правой кнопкой мыши и выбрав команду Изменить текст (Edit text).

interactive-chart5.png

Теперь привяжем наши флажки к любым ячейкам для определения того, включен флажок или нет (в нашем примере это две желтых ячейки в верхней части дополнительной таблицы). Для этого щелкните правой кнопкой мыши по очереди по каждому добавленному флажку и выберите команду Формат объекта (Format Control), а затем в открывшемся окне задайте Связь с ячейкой (Cell link).

Наша цель в том, чтобы каждый флажок был привязан  к соответствующей желтой ячейке над столбцом с валютой. При включении флажка в связанную ячейку будет выводиться ИСТИНА (TRUE), при выключении – ЛОЖЬ (FALSE). Это позволит, в дальнейшем, проверять с помощью формул связанные ячейки и выводить в дополнительную таблицу либо значение курса из исходной таблицы для построения графика, либо #Н/Д (#N/A), чтобы график не строился.

Шаг 3. Транслируем данные в дополнительную таблицу

Теперь заполним дополнительную таблицу формулой, которая будет транслировать исходные данные из основной таблицы, если соответствующий флажок валюты включен и связанная ячейка содержит слово ИСТИНА (TRUE):

interactive-chart6.png

Заметьте, что при использовании команды Форматировать как таблицу (Format as Table) на первом шаге, формула имеет использует имя таблицы и название колонки. В случае обычного диапазона, формула будет более привычного вида:

=ЕСЛИ(F$1;B4;#Н/Д)

Обратите внимание  на частичное закрепление ссылки на желтую ячейку (F$1), т.к. она должна смещаться вправо, но не должна – вниз, при копировании формулы на весь диапазон.

Теперь при включении-выключении флажков наша дополнительная таблица заполняется либо данными из исходной таблицы, либо искусственно созданной ошибкой #Н/Д, которая не дает линии на графике.

Шаг 4. Создаем полосы прокрутки для оси времени и масштабирования

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

Полосу прокрутки (Scroll bar) берем там же, где и флажки – на панели инструментов Формы (Forms) или на вкладке Разработчик (Developer):

interactive-chart7.png

Рисуем на листе в любом подходящем месте одну за другой две полосы – для сдвига по времени и масштаба:

interactive-chart8.png

Каждую полосу прокрутки надо связать со своей ячейкой (синяя и зеленая ячейки на рисунке), куда будет выводиться числовое значение положения ползунка. Его мы потом будем использовать для определения масштаба и сдвига. Для этого щелкните правой кнопкой мыши по нарисованной полосе и выберите в контекстном меню команду Формат объекта (Format control). В открывшемся окне можно задать связанную ячейку и минимум-максимум, в пределах которых будет гулять ползунок:

interactive-chart9.png

Таким образом, после выполнения всего вышеизложенного, у вас должно быть две полосы прокрутки, при перемещении ползунков по которым значения в связанных ячейках должны меняться в интервале от 1 до 307.

Шаг 5. Создаем динамический именованный диапазон

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

  • Отступом от начала таблицы вниз на заданное количество строк, т.е. отступом по временной шкале прошлое-будущее (синяя ячейка)
  • Количеством ячеек по высоте, т.е. масштабом (зеленая ячейка)

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

Для создания такого диапазона будем использовать функцию СМЕЩ (OFFSET) из категории Ссылки и массивы (Lookup and Reference) — эта функция умеет создавать ссылку на диапазон заданного размера в заданном месте листа и имеет следующие аргументы:

interactive-chart19.png

В качестве точки отсчета берется некая стартовая ячейка, затем задается смещение относительно нее на заданное количество строк вниз и столбцов вправо. Последние два аргумента этой функции – высота и ширина нужного нам диапазона. Так, например, если бы мы хотели иметь ссылку на диапазон данных с курсами за 5 дней, начиная с 4 января, то можно было бы использовать нашу функцию СМЕЩ со следующими аргументами:

=СМЕЩ(A3;4;1;5;2)

interactive-chart10.png

Хитрость в том, что константы в этой формуле можно заменить на ссылки на ячейки с переменным содержимым – в нашем случае, на синюю и зеленую ячейки. Сделать это можно, создав динамический именованный диапазон с функцией СМЕЩ (OFFSET). Для этого:

  • В Excel 2007/2010 нажмите кнопку Диспетчер имен (Name Manager) на вкладке Формулы (Formulas)
  • В Excel 2003 и старше – выберите в меню Вставка – Имя – Присвоить (Insert – Name – Define)

Для создания нового именованного диапазона нужно нажать кнопку Создать (Create) и ввести имя диапазона и ссылку на ячейки в открывшемся окне.

Сначала создадим два простых статических именованных диапазона с именами, например, Shift и Zoom, которые будут ссылаться на синюю и зеленую ячейки соответственно:    

interactive-chart11.png interactive-chart12.png

Теперь чуть сложнее – создадим диапазон с именем Euros, который будет ссылаться с помощью функции СМЕЩ (OFFSET) на данные по курсам евро за выбранный отрезок времени, используя только что созданные до этого диапазоны Shift и Zoom и ячейку E3 в качестве точки отсчета:

interactive-chart13.png

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

Аналогичным образом создается именованный диапазон Dollars для данных по курсу доллара:

interactive-chart14.png

И завершает картину диапазон Labels, указывающий на подписи к оси Х, т.е. даты для выбранного отрезка:

interactive-chart15.png

Общая получившаяся картина должна быть примерно следующей:

interactive-chart16.png

Шаг 6. Строим диаграмму

Выделим несколько строк в верхней части вспомогательной таблицы, например диапазон E3:G10 и построим по нему диаграмму типа График (Line). Для этого в Excel 2007/2010 нужно перейти на вкладку Вставка (Insert) и в группе Диаграмма (Chart) выбрать тип График (Line), а в более старших версиях выбрать в меню Вставка – Диаграмма (Insert – Chart). Если выделить одну из линий на созданной диаграмме, то в строке формул будет видна функция РЯД (SERIES), обслуживающая выделенный ряд данных:

interactive-chart18.png

Эта функция задает диапазоны данных и подписей для выделенного ряда диаграммы. Наша задача – подменить статические диапазоны в ее аргументах на динамические, созданные нами ранее. Это можно сделать прямо в строке формул, изменив

=РЯД(Лист1!$F$3;Лист1!$E$4:$E$10;Лист1!$F$4:$F$10;1)

на

=РЯД(Лист1!$F$3;Лист1!Labels;Лист1!Euros;1)

Выполнив эту процедуру последовательно для рядов данных доллара и евро, мы получим то, к чему стремились – диаграмма будет строиться по динамическим диапазонам Dollars и Euros, а подписи к оси Х будут браться из динамического же диапазона Labels. При изменении положения ползунков будут меняться диапазоны и, как следствие, диаграмма. При включении-выключении флажков – отображаться только те валюты, которые нам нужны.

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

Ссылки по теме

  • Умные таблицы Excel 2007/2010

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

Опросы позволяют другим людям заполнять ваш список, например список участников или анкету, где вы можете увидеть все это в одном месте в Интернете. Вот как можно создать опрос в OneDrive и OneDrive для работы или учебы:

В OneDrive для работы или учебы

Чтобы при начать создание опроса, выполните указанные здесь действия.

  1. Войдите в Microsoft 365 с помощью рабочей или учебной учетной записи.

  2. Нажмите кнопку«Создать» и выберите Формы для Excel, чтобы приступить к созданию опроса.

    Команда "вставить форму для Excel" в Excel для Интернета

    Примечание: 

    Формы для Excel
    доступны для OneDrive для работы или учебы и новых сайтов групп, связанных с Microsoft 365 группами. Узнайте больше о группах Microsoft 365.

  3. Введите имя опроса и нажмите кнопку «Создать».

  4. Нажмите кнопку «Добавить вопрос», чтобы добавить новый вопрос в опрос. Доступны такие типы вопросов, как Выбор, Текст, Оценка и Дата.

    Примечание: Опрос автоматически сохраняются при его создании.

    Типы вопросов "Выбор", "Текст" и "Оценка" для формы.

  5. Для вопросов типа «Выбор» введите текстовое содержание вопроса и каждого из вариантов выбора.

    Вопрос типа "Выбор" с параметрами

    Хотите добавить варианты? Щелкните Добавить вариант, чтобы добавить ответы, отличные от двух стандартных вариантов. Нажмите кнопку «Добавить другое», чтобы добавить параметр выбора, который отображает текст «Другие». Чтобы удалить вариант, нажмите кнопку корзины рядом с ним. Вы также можете сделать ответ обязательным или разрешить несколько вариантов выбора с помощью параметров под вопросом. Чтобы Microsoft Forms в случайном порядке порядок параметров, которые отображаются для пользователей опроса, нажмите кнопку с многолипкой кнопкой(…)и выберите «Параметры в случайном порядке».

    Совет: Нажмите кнопку с многоточием () и щелкните Подзаголовок, чтобы добавить для вопроса подзаголовок.

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

    Предлагаемые ответы для вопроса

    Щелкните предлагаемый вариант, чтобы добавить его. В приведенном ниже примере выбраны Понедельник, Среда и Пятница.

    Выбор предлагаемых ответов для вопроса

  6. Нажмите кнопку «Добавить вопрос», чтобы добавить другие вопросы в опрос. Изменить порядок вопросов можно с помощью стрелок Вверх и Вниз справа от них. Если вы хотите, чтобы на опросе отображалось большее текстовое поле, выберите параметр «Длинный ответ».

    Текстовый вопрос на форме

    Совет: Чтобы скопировать вопрос, выберите его и нажмите кнопку «Копировать вопрос Кнопка копирования вопроса в правом верхнем углу.

  7. Для текстовых вопросов также можно установить ограничение, если в качестве ответа должны использоваться числа. Нажмите кнопку с многоточием () и щелкните Ограничения. Установить для чисел ограничения можно с помощью параметров Больше, Меньше, Между и множества других.

    Текстовый вопрос с ограничением для числовых ответов в диапазоне от 1 до 6

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

    Режим предварительного просмотра на компьютере для формы учебного опроса

  9. Щелкните «Мобильный», чтобы посмотреть, как ваш опрос будет выглядеть на мобильном устройстве.

    Режим предварительного просмотра на мобильном устройстве для формы учебного опроса

    По завершению предварительного просмотра опроса нажмите кнопку «Назад».

В OneDrive

Важно: В ближайшее время будет отменена программа опроса Excel. Хотя существующие опросы, созданные в OneDrive с помощью > Excel, будут работать, но при создании опросов используйте Microsoft Forms.

В верхней части экрана нажмите Создать, а затем выберите пункт Опрос Excel.

Создание опроса Excel

Появится форма, на основе которой можно создать опрос.

Советы для создания опроса Excel

  • Вы можете добавить опрос в существующую книгу. Открыв книгу в Excel в Интернете, перейдите на главная и в группе «Таблицы» щелкните «Опрос > «Новый опрос». В книгу добавится лист опроса.

  • Заполните поля Введите название и Введите описание. Если вам не нужны название и описание, удалите замещающий текст.

  • Перетащите вопросы вверх или вниз, чтобы изменить их порядок в форме.

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

  • Если нажать кнопку «Закрыть»,вернуться к редактированию и просмотру формы можно на домашней > вExcel в Интернете.

    Команда "Опрос"

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

Создание эффективной формы для опроса

Добавляя вопросы в форму, помните, что каждый из них соответствует столбцу на листе Excel.

Соответствие вопросов опроса столбцам листа

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

Выбор ответов из списка упрощает сортировку и фильтрацию

Для этого перейдите на вкладку Главная > Опрос > Редактировать опрос и щелкните вопрос, который необходимо изменить. Укажите тип Выбор для параметра Тип отклика и разместите каждый вариант ответа в отдельной строке в поле Варианты выбора.

Поле "Варианты"

Вы также можете использовать другие типы ответов.

  • Типы Дата или Время позволяют сортировать результаты в хронологическом порядке.

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

  • Можно также использовать ответы типа Да/Нет, чтобы быстро узнать отношение респондентов к определенному вопросу.

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

См. также

Проверка результатов формы или опроса

Нужна дополнительная помощь?

Примеры форм листа Благодаря формам, а также многочисленным элементам управления и объектам, которые можно в них добавить, значительно упрощается ввод данных в листы и улучшается их внешний вид. Вы также можете делать это самостоятельно, и вам почти или совсем не потребуется код Microsoft Visual Basic для приложений (VBA).

Форма листа и шаблон Excel — это не одно и то же. Шаблон — это предварительно отформатированный файл, который служит отправной точкой для создания книги с требуемым оформлением. Форма содержит элементы управления, такие как поля и раскрывающиеся списки, упрощающие ввод и изменение данных для использующих ваш лист. Дополнительные информацию о шаблонах, которые можно скачать, см. в Excel шаблонов.

Общие сведения о формах

Форма (печатная или веб-версия) — это документ со стандартной структурой и форматированием, который упрощает сбор, у упорядочение и редактирование сведений.

  • Печатаемая форма содержит инструкции, форматирование, наклейки и пустые пробелы для ввода и ввода данных. Для создания печатных Excel и Excel шаблонов.

  • Веб-формы содержат те же функции, что и печатные формы. Кроме того, веб-формы содержат элементы управления. Элементы управления — это объекты, которые отображают данные или упрощают ввод или изменение данных, выполнение действия или выбор данных. Как правило, элементы управления упрощают работу с формой. Примерами часто используемых элементов управления являются списки, переключатели и кнопки. Элементы управления также могут запускать назначенные им макросы и реагировать на события, например щелчки мышью, путем выполнения кода Visual Basic для приложений (VBA).

Создавать печатные Excel веб-формы можно несколькими способами.

Типы форм Excel

В Excel можно создавать формы нескольких типов: формы данных, листы с элементами управления формы и ActiveX, а также пользовательские формы VBA. Каждый из этих типов формы можно использовать по отдельности или сочетать с другими типами для создания нужного решения.

Форма данных

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

Пример типичной формы данных Excel может автоматически создать встроенную форму данных для диапазон или таблица. Такая форма представляет собой диалоговое окно, в котором все заголовки столбцов отображаются в виде подписей. Каждой подписи соответствует текстовое поле, в которое можно вводить данные для столбца (максимальное количество столбцов — 32). В форме данных можно вводить новые строки, находить строки путем навигации или (на основе содержимого ячейки) обновлять строки и удалять их. Если ячейка содержит формула, ее результат отображается в форме данных, но саму формулу в форме данных изменить нельзя.

Лист с формой и элементами ActiveX

Этот тип формы позволяет вводить и просматривать данные в сетке. Кроме того, на Excel уже встроены некоторые функции, похожие на элементы управления, такие как приметки и проверка данных. Ячейки напоминают текстовые поля, которые можно вводить и форматированием различными способами. Ячейки часто используются в качестве подписей, и благодаря регулировке высоты и ширины ячеек, а также объединению ячеек можно настроить поведение таблицы как простую форму для ввода данных. Другие функции управления, такие как приметки к ячейкам, гиперссылки, фоновые изображения, проверка данных, условное форматирование, внедренные диаграммы и автофайл, могут привести к работе с таблицами как к расширенным формам.

Для большей гибкости вы можете добавлять элементы управления и другие объекты-рисунки полотно на полотно, а также объединять и координировать их с ячейками. Например, с помощью списка можно упростить выбор элементов в списке. Кроме того, можно упростить ввод номера с помощью счетчика.

Элементы управления и объекты хранятся на полотне, и поэтому их можно отображать и просматривать одновременно со связанным текстом, не зависящим от границ строк и столбцов, без изменения макета сетки или таблицы данных на листе. В большинстве случаев многие из этих элементов управления можно также связать с ячейками на листе, а для их нормальной работы не требуется создавать код VBA. Можно задать свойства, определяющие, является ли элемент управления свободно перемещаемым или перемещается и изменяет размеры вместе с ячейкой. Например, может потребоваться, чтобы флажок перемещался вместе со связанной ячейкой при сортировке диапазона. С другой стороны, если нужно, чтобы список всегда отображался в одном и том же месте, нежелательно, чтобы он перемещался вместе с ячейкой.

В Excel поддерживаются два типа элементов управления: элементы управления форм и элементы ActiveX. Кроме этих наборов элементов управления, вы также можете добавлять объекты из средств рисования, такие как автофигуры, объект WordArt, графические элементы SmartArt или текстовые поля.

В следующих разделах более подробно описываются элементы управления и средства рисования, а также работа с ними.

Элементы управления формы

Элементы управления формы появились в Excel раньше всего и поддерживаются в предыдущих выпусках Excel (начиная с версии 5.0). Их также можно использовать на листах макросов XLM.

Элементы управления формы используются, если вы хотите легко ссылаться на данные ячеок и взаимодействовать с ними, не используя код VBA, а также добавлять их на листы диаграмм. Например, после добавления элемента управления «список» на лист и связывания его с ячейкой можно вернуть числовые значения для текущего положения выбранного элемента управления. Затем можно использовать это число в сочетании с функцией ИНДЕКС для выбора различных элементов в списке.

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

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

Обзор элементов управления формы

Название кнопки

Пример

Описание

Изображение кнопки

Надпись

Пример подписи (элемент управления формы)

Указывает назначение ячейки или текстового поля либо содержит описание (заголовки, подписи, рисунки) или краткие инструкции.

Изображение кнопки

Значок кнопки

Пример группы (элемент управления формы)

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

Изображение кнопки

Изображение кнопки

Пример кнопки (элемент управления формы)

Запуск макроса, который выполняет действие при щелчке пользователем. Кнопка также называется push-кнопкой.

Изображение кнопки

Флажок

Пример флажка (элемент управления формы)

Включает или отключает значение, что соответствует выбору противоположных действий. На листе или в группе можно установить несколько флажков. Флажок может иметь одно из трех состояний: установлен (значение включено), снят (значение отключено) и смешанное состояние, то есть сочетание состояний «включено» и «отключено» (если поддерживается выбор нескольких элементов).

Изображение кнопки

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

Пример переключателя (элемент управления формы)

Позволяет выбрать одно из ограниченного набора взаимоисключающих значений. Переключатели обычно находятся в группе или рамке. Переключатель может иметь одно из трех состояний: установлен (значение включено), снят (значение отключено) и смешанное состояние, то есть сочетание состояний «включено» и «отключено» (если поддерживается выбор нескольких элементов).

Изображение кнопки

Список

Пример списка (элемент управления формы)

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

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

  • Список связанного выбора позволяет выбрать один элемент, а также несколько расположенных рядом элементов.

  • Список, разрешающий несвязный выбор нескольких строк, позволяет выбрать один элемент, расположенные рядом элементы, а также разрозненные элементы.

Изображение кнопки

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

Пример поля со списком (элемент управления формы)

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

Изображение кнопки

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

Пример полосы прокрутки (элемент управления формы)

Используется для прокрутки диапазона значений с помощью кнопок со стрелками или путем перетаскивания ползунка полосы прокрутки. Можно перемещаться по странице значений (с заранее заданным интервалом), щелкая область между ползунком и одной из кнопок со стрелками для прокрутки. Как правило, пользователь также может вводить текст непосредственно в связанную ячейку или текстовое поле.

Изображение кнопки

Счетчик

Пример счетчика (элемент управления формы)

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

Примечание: Следующие элементы управления недоступны в Office Excel 2007 книгах. Эти элементы управления можно использовать только Excel на листах диалогов версии 5.0.

Название кнопки

Изображение кнопки
текстового поля

Изображение кнопки
со списком — редактирование

Изображение кнопкисо #x0 — вниз, редактирование

Изображение кнопки
«Выполнить»

Элементы ActiveX

Элементы ActiveX можно использовать на формах листа (без кода VBA или с ним), а также на пользовательских формах VBA. Мы рекомендуем применять их, если требуются более гибкие возможности, чем у элементов управления формы. Многочисленные свойства элементов ActiveX позволяют настраивать их внешний вид, поведение, шрифты и другие характеристики.

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

На компьютере находятся многочисленные элементы ActiveX, установленные приложением Excel и другими программами, такими как Calendar Control 12.0 и проигрыватель Windows Media.

Важно: Не все элементы ActiveX можно использовать непосредственно на листах; некоторые из них можно применять только к пользовательским формам Visual Basic для приложений (VBA). При попытке добавить такие элементы управления на лист в приложении Excel отображается сообщение «Вставка объекта неосуществима».

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

Обзор элементов ActiveX

Название кнопки

Пример

Описание

Изображение кнопки

Флажок

Пример флажка (элемент ActiveX)

Включает или отключает значение, что соответствует выбору противоположных действий. На листе или в группе можно одновременно установить несколько флажков. Флажок может иметь одно из трех состояний: установлен (значение включено), снят (значение отключено) и смешанное состояние, то есть сочетание состояний «включено» и «отключено» (если поддерживается выбор нескольких элементов).

Изображение кнопки

Текстовое поле

Пример текстового поля (элемент ActiveX)

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

Изображение кнопки

Кнопка

Пример кнопки (элемент ActiveX)

Запуск макроса, который выполняет действие при щелчке пользователем. Кнопка также называется push-кнопкой.

Изображение кнопки

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

Пример переключателя (элемент ActiveX)

Позволяет выбрать одно из ограниченного набора взаимоисключающих значений. Переключатели обычно находятся в группе или рамке. Переключатель может иметь одно из трех состояний: установлен (значение включено), снят (значение отключено) и смешанное состояние, то есть сочетание состояний «включено» и «отключено» (если поддерживается выбор нескольких элементов).

Изображение кнопки

Список

Пример списка (элемент ActiveX)

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

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

  • Список связанного выбора позволяет выбрать один элемент, а также несколько расположенных рядом элементов.

  • Список, разрешающий несвязный выбор нескольких строк, позволяет выбрать один элемент, расположенные рядом элементы, а также разрозненные элементы.

Изображение кнопки

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

Пример поля со списком (элемент ActiveX)

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

Изображение кнопки

Выключатель

Пример выключателя (элемент ActiveX)

Указывает на состояние (да/нет) или режим (вкл./выкл.). При нажатии кнопки она меняет свое состояние на противоположное.

Изображение кнопки

Счетчик

Пример счетчика (элемент ActiveX)

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

Изображение кнопки

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

Пример полосы прокрутки (элемент ActiveX)

Используется для прокрутки диапазона значений с помощью кнопок со стрелками или путем перетаскивания ползунка полосы прокрутки. Можно перемещаться по странице значений (с заранее заданным интервалом), щелкая область между ползунком и одной из кнопок со стрелками для прокрутки. Как правило, пользователь также может вводить текст непосредственно в связанную ячейку или текстовое поле.

Изображение кнопки

Надпись

Пример подписи (элемент ActiveX)

Указывает назначение ячейки или текстового поля либо содержит описание (заголовки, подписи, рисунки) или краткие инструкции.

Изображение кнопки

Изображение

Пример изображения (элемент ActiveX)

Выводит изображение, например точечный рисунок, JPEG или GIF.

Рамка

Пример рамки (элемент ActiveX)

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

Примечание: Элемент ActiveX рамки не доступен в разделе ActiveX элементов управления команды Вставка. Тем не менее его можно добавить из диалогового окна Другие элементы, выбрав пункт Рамка Microsoft Forms 2.0.

Изображение кнопки

Другие элементы

Выводит список доступных на компьютере элементов ActiveX, которые можно добавить в настраиваемую форму (например, элементы Calendar Control 12.0 или проигрывателя Windows Media). В этом диалоговом окне также можно зарегистрировать пользовательский элемент управления.

Объекты средств рисования

Примеры фигур вы также можете включить в форму графические элементы SmartArt, фигуры, wordArt и текстовые поля. Можно изменять размер и цвет таких объектов, поворачивать, отражать и объединять их, чтобы получать еще более сложные фигуры. Текст, который вы вводите непосредственно в фигуру или надпись, становится частью объекта — при повороте или отражении объекта он также меняет свое положение. В отличие от элементов ActiveX, отдельным словам и знакам в объекте можно назначать различные атрибуты, например размер или начертание шрифта. Кроме того, объектам можно назначать макросы или гиперссылки. Можно даже связать текст в фигуре или надписи с ячейкой листа и динамически выводить обновленные значения.

Работа с элементами управления и объектами на листе

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

  • Управление отображением линий сетки при работе с элементами управления и отключение либо включение вывода линий сетки на готовой форме листа.

  • Выбор или отмена выбора элементов управления с целью указания свойств или дополнительной настройки.

  • Изменение текста элемента управления, например заголовка или подписи.

  • Группировка, копирование, перемещение и выравнивание элементов управления для упорядочения макета формы листа.

  • Изменение размера и форматирования элементов управления для достижения требуемого внешнего вида.

  • Изменение положения или размера элемента управления относительно ячейки.

  • Защита элементов управления и связанных ячеек в соответствии с собственными потребностями.

  • Включение или отключение печати элементов управления вместе с формой листа.

  • Удаление неиспользуемых элементов управления.

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

Определение типа элемента управления на листе

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

  • Если контекстное меню содержит команду Свойства, элемент управления является элементом ActiveX и сейчас используется режим конструктора.

  • Если контекстное меню содержит команду Назначить макрос, это элемент управления формы.

    Совет: Чтобы отобразить правильное shortcut menu для группы box Form control, убедитесь, что вы выбрали периметр, а не внутреннюю часть группы.

  • Если контекстное меню содержит команду Изменить текст, это объект-рисунок.

Пользовательские формы VBA

Для максимальной гибкости можно создавать пользовательские формы пользователей, которые обычно включают один или несколько ActiveX элементов управления. Пользовательские формы вызываются из программного кода VBA, который создается в редакторе Visual Basic. Ниже приведены общие указания по созданию пользовательских форм.

  1. Вставьте пользовательскую форму в проект VBA книги. Для доступа к проекту VBA нужно сначала отобразить редактор Visual Basic (нажмите ALT+F11), а затем в меню Вставка нажать кнопку Пользовательскаяформа.

  2. Создайте процедуру для отображения пользовательской формы.

  3. Добавьте элементы ActiveX.

  4. Измените свойства элементов ActiveX.

  5. Создайте процедуры обработчика событий для элементов ActiveX.

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

Перед созданием пользовательских форм рассмотрите возможность применения встроенных диалоговых окон, доступных в Excel. Они включают функции VBA InputBox и MsgBox, метод Excel InputBox, метод GetOpenFilename, метод GetSaveAsFilename и объект Dialogs объекта Application, который содержит все встроенные диалоговые окна Excel.

Дополнительные сведения можно получить в Центре разработчика Microsoft Office Excel.

К началу страницы

Ранее я рассмотрел методы создания пользовательских форм и основы работы с ними (если вы никогда не работали с пользовательскими формами, рекомендую для начала прочитать указанную заметку). В настоящем материале приводится целый ряд практически полезных примеров пользовательских диалоговых окон.[1]

Рис. 1. Меню на основе элементов управления CommandButton или ListBox

Скачать заметку в формате Word или pdf, примеры в архиве

Создание меню

Меню можно создать с помощью элементов управления CommandButton (рис. 1; см. файл userform menus.xlsm) и с помощью элемента управления ListBox. Каждый элемент управления CommandButton имеет собственную процедуру обработки событий. Например, представленная ниже процедура выполняется после щелчка на кнопке CommandButton1:

Private Sub CommandButton1_Click()

    Me.Hide

    Call Macro1

    Unload Me

End Sub

Эта процедура приводит к вызову макроса Macro1 и закрытию диалогового окна UserForm. После щелчка на других кнопках (отличных от CommandButton1) вызываются похожие процедуры обработки событий.

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

Private Sub UserForm_Initialize()

    With ListBox1

        .AddItem «Макрос1»

        .AddItem «Макрос2»

        .AddItem «Макрос3»

        .AddItem «Макрос4»

        .AddItem «Макрос5»

        .AddItem «Макрос6»

    End With

End Sub

Процедура обработки события привязывается к кнопке Выполнить:

Private Sub ExecuteButton_Click()

    Select Case ListBox1.ListIndex

        Case 1

            MsgBox «Выберите макрос из списка.»

            Exit Sub

        Case 0: Me.Hide: Call Macro1

        Case 1: Me.Hide: Call Macro2

        Case 2: Me.Hide: Call Macro3

        Case 3: Me.Hide: Call Macro4

        Case 4: Me.Hide: Call Macro5

        Case 5: Me.Hide: Call Macro6

    End Select

    Unload Me

End Sub

Данная процедура проверяет значение свойства Listlndex элемента управления ListBox, чтобы определить, какой элемент выбран в списке (если свойство Listlndex равно –1, то не выбран ни один из элементов). После этого запускается соответствующий макрос.

Выбор диапазона в пользовательской форме

Некоторые встроенные диалоговые окна Excel предоставляют пользователю возможность выбирать диапазон. Например, диалоговое окно Подбор параметра, для вызова которого следует пройти по меню Данные –> Работа с данными –> Анализ «что если « –> Подбор параметра, запрашивает у пользователя два диапазона. Пользователь может или ввести имя диапазона непосредственно в окне, или применить мышь для выделения диапазона на листе.

Пользовательское диалоговое окно также обеспечивает подобную функциональность. Это достигается с помощью элемента управления RefEdit. Данный элемент выглядит иначе, чем элемент выбора диапазона во встроенных диалоговых окнах Excel, однако работает точно так же. Если пользователь щелкнет на небольшой кнопке в правой части элемента управления, то диалоговое окно временно исчезнет, а на экране будет отображен небольшой указатель выбора диапазона.

К сожалению, элемент управления RefEdit не позволяет использовать специальные клавиши при выделении диапазона (например, невозможно выделить ячейки до конца столбца, нажав комбинацию клавиш Shift+↓). Кроме того, после щелчка мышью на маленькой кнопке в правой части элемента управления (для временного сокрытия диалогового окна) можно применять только выделения с помощью мыши. Клавиатуру в этом случае применять нельзя.

На рис. 2 представлено пользовательское диалоговое окно с добавленным элементом управления RefEdit (см. файл range selection demo.xlsm). Это диалоговое окно выполняет простую математическую операцию над всеми не содержащими формул и непустыми ячейками указанного диапазона. Выполняемая операция задается активным переключателем OptionButton.

Рис. 2. С помощью элемента управления RefEdit можно выбрать диапазон

Элемент управления RefEdit возвращает текстовую строку, которая представляет выбранный диапазон. Можно преобразовать эту строку в объект Range. Для этого используется оператор:

Set UserRange = Range(RefEditl.Text)

Удачной практикой считается инициализация элемента управления RefEdit для представления текущего выделения. Для этого в процедуре UserForm_Initialize воспользуйтесь оператором:

RefEditl.Text = ActiveWindow.RangeSelection.Address

Для достижения наилучших результатов не помещайте элемент управления RefEdit внутри элемента Frame либо MultiPage. Это может привести к сбою в работе Excel. Элемент управления RefEdit не всегда возвращает действительный диапазон. Выделение диапазона указателем мыши — это один из способов присвоения значения данному элементу управления. Пользователь может ввести в поле любой текст, а также отредактировать или удалить уже отображаемый текст. Таким образом, предварительно необходимо убедиться, что диапазон является допустимым.

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

    On Error Resume Next

    Set UserRange = Range(RefEdit1.Text)

    If Err <> 0 Then

        MsgBox «Выбран некорректный диапазон»

        RefEdit1.SetFocus

        Exit Sub

    End If

    On Error GoTo 0

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

Set OneCell = Range(RefEditl.Text).Range("Al")

Создание заставки

Некоторые разработчики предпочитают отображать определенную вступительную информацию при запуске приложения. Эта методика называется заставкой. Без сомнения, все пользователи видели заставку Excel, которая отображается несколько секунд при запуске программы. В приложении Excel заставку можно создать с помощью пользовательского диалогового окна. В приведенном ниже примере реализуется автоматическое отображение заставки, которое исчезает по истечении пяти секунд (рис. 3; см. файл splash screen.xlsm). Для создания заставки выполните следующие действия:

  1. Создайте рабочую книгу.
  2. Активизируйте редактор VBE и вставьте пользовательское диалоговое окно в проект. Код в этом примере предполагает, что объект UserForm называется UserForm1.
  3. Поместите любые необходимые элементы управления в только что созданное диалоговое окно UserForm1. Например, вам может понадобиться расположить элемент управления Image, который будет содержать логотип компании (рис. 3).
  4. Вставьте процедуру в модуль кода для объекта ЭтаКнига (ThisWorkbook):

Private Sub Workbook_Open()

    UserForm1.Show

End Sub

  1. Вставьте следующую процедуру в модуль кода для объекта UserForm1 (эта процедура обеспечивает пятисекундную задержку). Если нужно другое время задержки, измените значение аргумента функции TimeValue.

Private Sub UserForm_Activate()

    Application.OnTime Now + TimeValue(«00:00:05»), «KillTheForm»

End Sub

Рис. 3. Эта заставка на короткое время появляется на экране после открытия рабочей книги

  1. В общий модуль VBA вставьте следующую процедуру.

Private Sub KillTheForm()

    Unload UserForm1

End Sub

При открытии рабочей книги будет выполнена процедура Workbook_Open и появится диалоговое окно UserForm (п. 4). В этот момент генерируется событие Activate, которое приводит к выполнению процедуры UserForm_ Activate (п. 5). Данная процедура использует метод OnTime объекта Application для выполнения процедуры KillTheForm в определенный момент времени. Однако предварительно определена задержка в пять секунд с момента возникновения события Activate. Процедура KillTheForm просто выгружает диалоговое окно UserForm из памяти.

  1. В качестве необязательного действия можно добавить элемент управления CommandButton с именем CancelButton, установить его свойство Cancel равным True и добавить представленную ниже процедуру обработки события в модуль кода формы UserForm.

Private Sub CancelButton_Click()

    Unload Me

End Sub

Таким образом, пользователь сможет закрыть заставку, прежде чем пройдет указанное время задержки. Окно будет закрыто также в результате нажатия клавиши <Esc>. Эту небольшую кнопку можно разместить за другим объектом, чтобы она не была видна.

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

Для того чтобы выполнить VBA-процедуру при открытии документа, нужно так отобразить пользовательское диалоговое окно в немодальном режиме, чтобы код продолжал выполняться. Для этого измените процедуру WorkbookOpen следующим образом.

Private Sub Workbook_Open()

    UserForml.Show vbModeless

     другой код

End Sub

Отключение кнопки закрытия пользовательского диалогового окна

Если пользовательское диалоговое окно уже отображено на экране, щелчок на кнопке Закрыть в правом верхнем углу приведет к выгрузке формы UserForm из памяти. Иногда этого допускать нельзя. Например, иногда требуется, чтобы диалоговое окно UserForm закрывалось только после щелчка на специальной кнопке CommandButton. Несмотря на то что реально отключить кнопку Закрыть невозможно, вы вправе предотвратить закрытие диалогового окна, вызванное щелчком на этой кнопке. Для этого воспользуйтесь обработчиком события QueryClose (см. файл gueryclose demo.xlsm). Следующая процедура, которая расположена в модуле кода диалогового окна UserForm, выполняется перед закрытием формы (т.е. в момент возникновения события QueryClose).

Private Sub UserForm_QueryClose _

  (Cancel As Integer, CloseMode As Integer)

    If CloseMode = vbFormControlMenu Then

        MsgBox «Щелкните на кнопке OK для закрытия формы.»

        Cancel = True

    End If

End Sub

Процедура UserForm_QueryClose использует два аргумента. Аргумент CloseMode содержит значение, которое указывает на причину возникновения события QueryClose. Если значение аргумента CloseMode равно vbFormControlMenu (встроенная константа), значит, пользователь щелкнул на кнопке Закрыть. В таком случае будет отображено сообщение (рис. 4); аргумент Cancel устанавливается равным True, и форма не закрывается.

Рис. 4. Процедура перехватывает закрытие окна, и оставляет его открытым

Имейте в виду, что пользователь может нажать клавиши <Ctrl+Break>, прекратив тем самым выполнение макроса. В рассматриваемом примере нажатие клавиш <Ctrl+Break> во время отображения формы UserForm на экране приведет к тому, что пользовательское диалоговое окно будет закрыто. Во избежание этого выполните следующий оператор до отображения пользовательского диалогового окна:

Application.EnableCancelKey = xlDisabled

Прежде чем добавить этот оператор, удостоверьтесь, что в приложении нет ошибок. В противном случае возникает опасность формирования бесконечного цикла.

Изменение размера диалогового окна

Во многих приложениях используются окна, которые могут изменять собственные размеры, добавляя кнопки и опции. Например, высота диалогового окна Excel Найти и заменить, которое отображается после выбора команды Главная –> Редактирование –> Найти и выделить –> Заменить, увеличивается после щелчка на кнопке Параметры.

Изменение размеров пользовательского диалогового окна осуществляется путем изменения значений свойств Width и Height объекта UserForm. На рис. 5а показано первоначальное диалоговое окно, а на рис. 5б показано это же окно после щелчка на кнопке Параметры. Обратите внимание на то, что надпись на кнопке изменяется в зависимости от размера диалогового окна (см. файл change userform size.xlsm).

Рис. 5. Диалоговое окно: вверху – в стандартном режиме; внизу – после нажатия на кнопке Параметры

Создавая пользовательское диалоговое окно, определите его максимальный размер, чтобы получить доступ ко всем элементам управления. После этого воспользуйтесь процедурой UserForm_Initialize для установки размеров диалогового окна по умолчанию.

В коде применяются две константы, определенные в верхней части модуля.

Const SmallSize As Integer = 124
Const LargeSize As Integer = 164

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

Private Sub OptionsButton_Click()

    If OptionsButton.Caption = «Параметры >>» Then

        Me.Height = LargeSize

        OptionsButton.Caption = «<< Параметры»

    Else

        Me.Height = SmallSize

        OptionsButton.Caption = «Параметры >>»

    End If

End Sub

Эта процедура проверяет значение свойства Caption объекта CommandButton и устанавливает значение свойства Height объекта UserForm в соответствии с полученным значением свойства Caption.

Если элементы управления не отображаются из-за того, что находятся за пределами границы диалогового окна, соответствующие этим элементам управления комбинации клавиш будут продолжать функционировать. В рассматриваемом примере пользователь может нажать клавиши <Alt+L> (для выбора альбомной ориентации страницы), даже если соответствующий элемент управления не отображается на экране.

Масштабирование и прокрутка листа в пользовательском диалоговом окне

Для прокрутки и масштабирования листа при активном диалоговом окне можно применить элемент управления ScrollBar (рис. 6; см. файл zoom and scroll sheet.xlsm). В этом примере масштаб можно изменять в диапазоне от 100 до 400%. Два элемента управления ScrollBar в нижней части диалогового окна позволяют прокручивать лист по горизонтали и по вертикали.

Рис. 6. Элементы управления ScrollBar позволяют прокручивать лист и изменять его масштаб

Элементы управления инициализируются в процедуре UserForm_Initialize:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

Private Sub UserForm_Initialize()

    LabelZoom.Caption = ActiveWindow.Zoom & «%»

‘   Масштабирование

    With ScrollBarZoom

        .Min = 10

        .Max = 400

        .SmallChange = 1

        .LargeChange = 10

        .Value = ActiveWindow.Zoom

    End With

   Прокрутка по горизонтали

    With ScrollBarColumns

        .Min = 1

        .Max = ActiveSheet.UsedRange.Columns.Count

        .Value = ActiveWindow.ScrollColumn

        .LargeChange = 25

        .SmallChange = 1

    End With

   Прокрутка по вертикали

    With ScrollBarRows

        .Min = 1

        .Max = ActiveSheet.UsedRange.Rows.Count

        .Value = ActiveWindow.ScrollRow

        .LargeChange = 25

        .SmallChange = 1

    End With

End Sub

Эта процедура позволяет устанавливать значения различных свойств элементов управления ScrollBar. Значения определяются на основе данных, полученных из активного окна. При использовании элемента управления ScrollBarZoom выполняется процедура ScrollBarZoom_Change. Она устанавливает значение свойства Zoom объекта ActiveWindow равным значению свойства Value элемента управления ScrollBar. Кроме того, изменяется текст подписи, которая представляет текущий масштаб рабочего листа.

Private Sub ScrollBarZoom_Change()

    With ActiveWindow

        .Zoom = ScrollBarZoom.Value

        LabelZoom = .Zoom & «%»

        .ScrollColumn = ScrollBarColumns.Value

        .ScrollRow = ScrollBarRows.Value

    End With

End Sub

Прокрутка листа осуществляется с помощью двух процедур. Эти процедуры устанавливают значение свойств ScrollRow и ScrollColumns объекта ActiveWindow равными значениям свойств Value элементов управления ScrollBar.

Private Sub ScrollBarColumns_Change()

    ActiveWindow.ScrollColumn = ScrollBarColumns.Value

End Sub

Private Sub ScrollBarRows_Change()

    ActiveWindow.ScrollRow = ScrollBarRows.Value

End Sub

При нажатии на кнопку Ok пользовательская форма закрывается:

Private Sub OKButton_Click()

    Unload Me

End Sub

Применение элемента управления MultiPage

Элемент управления MultiPage применяется при отображении в пользовательских диалоговых окнах множества элементов управления. Элемент управления MultiPage позволяет группировать опции, а также размещать каждую группу на отдельной вкладке (рис. 7; см. файл multipage control demo.xlsm). Панель инструментов Toolbox также включает элемент управления TabStrip, напоминающий элемент управления MultiPage. Однако в отличие от MultiPage, элемент управления TabStrip не может включать другие объекты. Поскольку элемент управления MultiPage является более гибким, вряд ли вам придется обращаться к элементу управления TabStrip.

Рис. 7. Элемент управления MultiPage группирует элементы управления на страницах, доступ к которым обеспечивается с вкладки

Вкладка (или страница), которая отображается поверх всех остальных, определяется значением свойства Value элемента управления MultiPage. Значение 0 соответствует первой вкладке. Значение 1 вызывает отображение второй вкладки и т.д. По умолчанию элемент управления MultiPage состоит из двух страниц. Для того чтобы добавить дополнительные вкладки, щелкните на любой вкладке правой кнопкой мыши и в контекстном меню выберите пункт New Page.

При работе с элементом управления MultiPage щелкните на вкладке, чтобы установить свойства страницы. В окне Properties отобразятся свойства, значения которых можно изменить. Иногда сложно выделить сам элемент управления MultiPage, так как щелчок на нем приводит к выделению страницы элемента управления. Для того чтобы выделить только элемент управления, щелкните на его границе. Кроме того, можете воспользоваться клавишей <Таb> для циклического перемещения между элементами управления. Еще одним вариантом выделения элемента управления является выбор пункта MultiPage из раскрывающегося списка окна Properties.

Если элемент управления MultiPage содержит много вкладок, то присвойте его свойству MultiRow значение True, чтобы отобразить вкладки в несколько строк. Если необходимо, то вместо вкладок можно отображать кнопки. Достаточно изменить значение свойства Style на 1. Если значение свойства Style равно 2, элемент управления MultiPage не будет отображать ни вкладки, ни кнопки.

Свойство TabOrientation определяет расположение вкладок на элементе управления MultiPage. Для каждой страницы можно установить эффект перехода. Для этого воспользуйтесь свойством TransitionEffect. Например, щелчок на вкладке приведет к тому, что новая страница «отодвинет» старую. Применяйте свойство TransitionPeriod, чтобы задать скорость эффекта перехода.

Использование внешних элементов управления

Пример, рассматриваемый в этом разделе, основан на элементе управления Microsoft Windows Media Player. Несмотря на то что он не является элементом управления Excel (настраивается при установке Windows), он прекрасно работает с формами UserForm. Для того чтобы воспользоваться элементом управления Microsoft Windows Media Player выполните следующие действия:

  1. Активизируйте среду VBE.
  2. Создайте новую пользовательскую форму: Insert –> UserForm.
  3. Щелкните правой кнопкой мыши на панели Toolbox и в контекстном меню выберите параметр Additional Controls (Дополнительные элементы управления). Если окно Toolbox не отображается, выполните команду View –> Toolbox.
  4. В окне Additional Controls установите флажок Windows Media Player (рис. 8).
  5. Щелкните на кнопке ОК. Набор инструментов пополнится новым элементом управления.

Рис. 8. Подключение элемента управления Microsoft Windows Media Player

На рис. 9 показаны элемент управления Windows Media Player, встроенный в форму UserForm, а также окно Properties (см. также файл mediaplayer.xlsm, расположенный в отдельной папке). Свойство URL определяет URL-ссылку воспроизводимой композиции (музыкальная запись или видеоролик). Если композиция находится на жестком диске вашего компьютера, свойство URL определяет полный путь и имя соответствующего файла.

Рис. 9. Элемент управления Windows Media Player, встроенный в форму

На рис. 10 показан пример использования этого элемента управления. Для сокрытия окна, предназначенного для отображения видеороликов, была уменьшена высота окна элемента управления Windows Media Player. Также был добавлен список, созданный на основе элемента управления ListBox, в котором отображаются аудиофайлы MP3. После щелчка на кнопке Пуск начинается воспроизведение выбранного файла. Щелчок на кнопке Закрыть приведет к прекращению воспроизведения и к закрытию окна UserForm. Форма UserForm отображается в немодальном режиме, поэтому можно продолжать работу во время отображения диалогового окна.

Рис. 10. Элемент управления Windows Media Player в действии

Названия МРЗ-файлов в окне списка отображаются с помощью процедуры UserForm_Initialize. В целях упрощения алгоритма аудофайлы находятся в той же папке, что и рабочая книга. Можно реализовать и более гибкий подход, предусматривающий выбор пользователем папки, содержащей требуемые аудиофайлы.

Private Sub UserForm_Initialize()

    Dim FileName As String

   Заполнение списка MP3файлами

    FileName = Dir(ThisWorkbook.Path & «*.mp3», vbNormal)

    Do While Len(FileName) > 0

        ListBox1.AddItem FileName

        FileName = Dir()

    Loop

    ListBox1.ListIndex = 0

End Sub

Код обработчика событий PlayButton_Click включает единственный оператор, который присваивает выбранное имя файла свойству URL объекта WindowsMediaPlayer1.

Private Sub PlayButton_Click()

   Свойство URL загружает трек и запускает плеер

    WindowsMediaPlayer1.URL = _

      ThisWorkbook.Path & «« & ListBox1.List(ListBox1.ListIndex)

End Sub

Анимация элемента управления Label

Форма UserForm (рис. 11) представляет собой интерактивный генератор случайных чисел. Два элемента управления TextBox содержат верхнее и нижнее значения для случайного числа. Элемент управления Label изначально отображает четыре знака вопроса, а после щелчка мышью на кнопке Пуск отображаются анимированные случайные числа. При этом кнопка Пуск превращается в кнопку Остановить, а щелчок на ней мышью приводит к прекращению анимации и отображению случайного числа. Код, связанный с кнопкой генератора случайных чисел можно найти в модуле UserForm1 файла random number generator.xlsm.

Рис. 11. Генератор случайных чисел

Поскольку кнопка выполняет две функции (запуск и остановка анимации), в процедуре используется общедоступная переменная Stopped, с помощью которой отслеживается состояние кнопки. Первая часть процедуры состоит из двух структур If-Then, с помощью которых проверяется содержимое элементов управления TextBox. Два другая подобных оператора позволяют удостовериться в том, что меньшая величина действительно не превосходит большей величины. В следующем разделе кода осуществляется настройка размера шрифта элемента управления Label на основании максимальной величины. Цикл Do Until loop генерирует и отображает случайные числа. Обратите внимание на оператор DoEvents. Он позволяет Excel использовать все возможности операционной системы. Если бы его не было, элемент управления Label не смог бы отобразить каждое генерируемое случайное число. Другими словами, именно оператор DoEvents делает возможной анимацию.

Форма UserForm также включает элемент управления CommandButton, который выполняет функции кнопки Отмена. Этот элемент управления находится за пределами окна UserForm, поэтому невидим. Свойству Cancel элемента управления CommandButton присвоено значение True. Вследствие этого нажатие клавиши <Esc> дает тот же эффект, что и щелчок на кнопке Отмена. Соответствующая процедура обработки событий присваивает переменной Stopped значение True и выгружает форму UserForm.

[1] По материалам книги Джон Уокенбах. Excel 2010. Профессиональное программирование на VBA. – М: Диалектика, 2013. – С. 439–449, 466–472.

A UserFrom refers to a form or a dialog box on the screen that enables a user to input data into Excel’s user interface. it can be created using the Visual Basic Editor and is used to control data entry and avoid errors.

1. Creating a UserForm: 

To create a userform head on to the Developer tab-> Visual Basic->Insert->UserForm.

You can also go to the Project window on the left side and right-click the workbook you want to use and select Insert->UserForm. This opens up a blank userform (UserForm1) and a toolbox(if the toolbox doesn’t pop up head on to View>toolbox).

2. Naming the UserForm:

By default, excel opens up an userform with the name UserForm1 in order to change that name:

  • Head to the Properties window(view>Properties window), This opens a pane on the left.
  • Click on the ‘Name’ section and type a name of your choice. (don’t add spaces)
  • The name won’t be reflected on the userform when you do so because that’s a different property of the form.
  • Head to the ‘Caption’ property and type in a name, and it will be reflected on your UserForm.

Now let’s play with some controls and learn how to add them to our UserForm.

3. Adding a Textbox to the UserForm:

A Textbox is used to enable users to input information into the form. 

  • To add a TextBox head onto the ToolBox. Click on( View->Toolbox) if it isn’t visible by default.
  • Select the TextBox button
  • Click on the userform to place it or drag it to a position of your choice.
  • You can resize the Textbox to the dimensions of your liking

To rename the Textbox With the new textbox selected, double-click on the ‘Name’ property in the Properties window and rename it(its been renamed to ‘TextBox’ here).

4. Adding a Label to the UserForm:

A Label can be used to describe what type of data is being entered into the textboxes, a message, or instructions.

  • To add a Label head onto the ToolBox.
  • Select the ‘Label ‘button
  • Click on the userform to place it or drag it to a position of your choice.
  • You can resize it to the dimensions of your liking or leave it in standard size.

To rename the Label With the new Label selected, double-click on the ‘Name‘ property in the Properties window and rename it. Also, change the ‘Caption’ property accordingly. its been renamed to ‘LblSelectSheet’ and captioned to ‘Please select a worksheet’.

5. Adding Buttons to the Userform:

To make the form interactive you can place buttons to perform certain actions. 

  • To add a Button head onto the ToolBox.
  • Select the ‘CommandButton’ button
  • Click on the userform to place it or drag it to a position of your choice.
  • You can resize it to the dimensions of your liking or reposition the buttons by dragging them to a new location on the form.

To rename the button With the new button selected, double-click on the ‘Name’ property in the Properties window and rename it. Then change the ‘Caption’ property to name the button relevantly close to the action it will be performing. For example the AddSheet and CloseFom button in the image below. In the below images 2 buttons have been added and renamed to ‘CmdAddSheet’ and ‘CmdCloseFrm’ and captioned to ‘Add Sheet’ and ‘Close Form’.

6. Adding code to the buttons:

To ensure the buttons are performing the actions we need to code inside VBA and to add code for specific controls double-click on the controls in the form, and it directs you to the specific code segment. After adding the necessary code for each of the controls click on the run button to display the userform.

  • Select the button for example Add sheet button in this example
  • On the Menu bar, choose View >Code.
  • This creates a procedure, where you can add your code.
  • Enter the following code to add another sheet to your workbook and name it according to your choice.
Private Sub CmdAddSheet_Click()
Worksheets.Add before:=Worksheets(1)
ActiveSheet.Name = InputBox("please enter the name for the worksheet")
End Sub

7. Adding code to the close button :

Add the following code to close the form by clicking on the ‘close from’ button and redirect to the VBE.

Private Sub CmdCloseFrm_Click()
  Unload Me
End Sub

8. Testing the userform :

To test the UserForm simply go to the menu bar and hit the Run button. It runs userform and displays it on the screen. For example, a userform that selects a sheet from the combobox and directs you to it, with 2 buttons Add Sheet and Close form button to add an extra sheet in the workbook and the close the userform is displayed. 

Complete code to run the above userform inclusive of a combobox with the list of worksheets currently present in the workbook and functionality of buttons is:

Private Sub CmdAddSheet_Click()
Worksheets.Add before:=Worksheets(1)
ActiveSheet.Name = InputBox("please enter the name for the worksheet")
End Sub

Private Sub CmdCloseFrm_Click()
Unload Me
End Sub

Private Sub combobox_Change()
Worksheets(Me.combobox.Value).Select


End Sub

Private Sub UserForm_Initialize()
   
    Dim i As Integer
    i = 1
    Do While i <= Worksheets.Count
    Me.combobox.AddItem Worksheets(i).Name
    i = i + 1
    Loop
   
   
End Sub

To automate the userform experience or to display it  as soon as you open the workbook the following needs to be done:

Making use of the workbook event

  • Head on to the Developer tab>Visual Basic.
  • Double click  “This workbook”  from the project window.
  • Change the drop-down on the top left from General to workbook.
  • Add this line of code to the procedure “formname.show”(in the below example frmFinalReport.show).
  • Save and run.

Общие сведения о формах, элементах управления форм и элементах ActiveX на листе

​Смотрите также​​ форму для ввода​Защита​, который содержит все​ меню для группы​ например заголовка или​Рамка Microsoft Forms 2.0​ щелкните стрелку вниз,​ управления формы или​ В этом диалоговом​ гибкие требования к​ поле со списком,​ и смешанное состояние,​ добавлять в пользовательские​ вместе с ячейкой.​ котором можно ввести​ данных. Excel и​Примечание:​ данных в форматированную​и выберите команду​ встроенные диалоговые окна​ элемент управления формы,​

​ подписи.​​.​ чтобы отобразить список​ элемент ActiveX), щелкните​ окне также можно​ разработке чем элементы​ но пользователь должен​

Примеры форм листа​ то есть сочетание​ формы, управления или​ Например может иметь​ данные для каждого​ Excel можно использовать​Мы стараемся как​ таблицу. Заранее спасибо​Защитить лист​ Excel.​ убедитесь в том,​Группировка, копирование, перемещение и​Несколько элементов управления​ элементов. С помощью​ его правой кнопкой​

​ зарегистрировать пользовательский элемент​ управления формы. Элементы​ щелкните стрелку вниз,​ состояний «включено» и​ применять для выполнения​ флажка, который вы​ столбца, не более​ шаблоны для создания​ можно оперативнее обеспечивать​ за ответ.​.​Дополнительные сведения можно получить​ что вы выбрали​ выравнивание элементов управления​Отображает список дополнительных элементов​ разрешение пользователя для​ мыши и просмотрите​ управления.​ управления ActiveX обладают​ чтобы отобразить список​

Что такое формы?

​ «отключено» (если поддерживается​ сценариев на веб-страницах.​ хотите переместить вместе​ 32 столбцов. В​ печатной формы.​ вас актуальными справочными​

  • ​Z​Выберите нужные параметры защиты.​ в Центре разработчика​ периметр группы, а​ для упорядочения макета​ управления ActiveX, доступных​ любого типа записи​ контекстное меню.​

  • ​После добавления форм и​ широкая свойств, которые​ элементов. Использование поля​ выбор нескольких элементов).​Выводит список доступных на​ с ее базовой​ форме данных, можно​Интерактивные формы содержат похожих​ материалами на вашем​: Да. Выделить данные​Сохраните и закройте книгу.​ Microsoft Office Excel.​ не ее внутреннюю​ формы листа.​ на вашем компьютере,​ и выберите только​Чтобы отобразить правильное контекстное​ элементов ActiveX на​ можно использовать для​ со списком для​Чтобы отобразить правильное контекстное​ компьютере элементов ActiveX,​ ячейки при сортировке​ вводить новые строки,​ функций как печатной​

​ языке. Эта страница​ и нажать знак​Совет:​К началу страницы​

Типы форм Excel

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

Форма данных

​ настройки их внешний​ включения пользователя для​ меню для элемента​ которые можно добавить​ диапазон. Тем не​ поиск строки с​ формы. Кроме того​ переведена автоматически, поэтому​ «Форма». Если его​ Чтобы продолжить редактирование после​Вы можете создать форму​Если контекстное меню содержит​ элементов управления для​ настраиваемой формы, такие​ списка. Элемент управления​ управления формы «Группа»,​ их требуется настроить​ вид, поведение, шрифты​ входа введите или​ управления формы «Группа»,​ в настраиваемую форму​ менее если у​ помощью навигации или​

Пример типичной формы данных​ интерактивные формы содержат​ ее текст может​ еще нет, то​ защиты формы, в​ в Excel, добавив​ команду​ достижения требуемого внешнего​ как Calendar Control​ отображает текущее значение​ выделите периметр группы,​ и упорядочить для​ и другие характеристики.​ выберите только один​ выделите периметр группы,​ (например, элементы Calendar​ вас есть поле​ (на основе содержимого​ элементы управления. Элементы​ содержать неточности и​ вынести на ПБД​ меню​ в книгу элементы​Назначить макрос​ вида.​ 12.0 и проигрыватель​ в текстовом поле,​ а не ее​ создания привлекательной и​Также можно управлять различные​

Включает или отключает значение, что соответствует выбору противоположных действий. На листе или в группе можно установить несколько флажков. Флажок может иметь одно из трех состояний: установлен (значение включено), снят (значение отключено) и смешенное состояние, то есть сочетание состояний «включено» и «отключено» (если поддерживается выбор нескольких элементов).

​ элемент из списка.​ а не ее​ Control 12.0 или​ со списком, которое​ ячейки) обновление строк​ управления, объекты, которые​ грамматические ошибки. Для​ (панель быстрого доступа)…​Сервис​ управления содержимым, такие​, объект-рисунок.​Изменение положения или размера​ Windows Media. В​ независимо от способа​ внутреннюю часть.​ понятной формы. При​ события, возникающие при​ Элемент управления отображает​ внутреннюю часть.​ проигрывателя Windows Media).​ нужно оставить в​ и удаление строк.​ отображают данные или​ нас важно, чтобы​Ирина​наведите указатель на​ как кнопки, флажки,​Для максимальной гибкости можно​ элемента управления относительно​ этом диалоговом окне​ ввода этому значению.​

​Позволяет выбрать одно из​ этом часто выполняются​ работе элемента ActiveX​ текущее значение в​Позволяет выбрать одно из​ В этом диалоговом​ определенном месте вообще​ Содержит ли ячейка​ упростить для пользователей​ эта статья была​: Здравствуйте. Спасибо. Я​ пункт​ списки и поля​ создавать пользовательские формы,​ ячейки.​ можно также зарегистрировать​Выключатель​ ограниченного набора взаимоисключающих​ перечисленные ниже задачи.​ с. Например вы​ текстовом поле, независимо​ ограниченного набора взаимоисключающих​ окне также можно​ значениями времени, вы,​ формула, будет выведен​ для ввода или​ вам полезна. Просим​ знаю это действие.​Защита​ со списками. После​ которые представляют собой​Защита элементов управления и​ настраиваемого элемента управления.​Указывает на состояние (да/нет)​ значений. Переключатели обычно​Выбор или отмена выбора​ можете выполнять различные​ от способа ввода​ значений. Переключатели обычно​ зарегистрировать пользовательский элемент​ скорее всего, не​

​ результат формулы в​ редактирования данных, выполнить​ вас уделить пару​ Но если данных​и выберите команду​ этого другие пользователи​ настраиваемые диалоговые окна,​ связанных ячеек в​Кроме того, можно​ или режим (вкл./вкл.).​ находятся в группе​

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

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

​ секунд и сообщить,​ много и таблица​Снять защиту листа​ смогут заполнить эту​ которые обычно включают​ соответствии с собственными​ включить графики SmartArt,​

​ При нажатии кнопки​ или рамке. Переключатель​ целью указания свойств​ от того, какой​Позволяет увеличивать и уменьшать​ или рамке. Переключатель​Пример​ с ее базовой​ не удается изменить​ нужный вариант. Как​ помогла ли она​ огромная, то тогда​.​ форму в приложении​ один или несколько​ потребностями.​ фигуры, объекта WordArt​ она меняет свое​ может иметь одно​​ или дополнительной настройки.​​ вариант пользователь выбирает​ значение, например числовое​

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

​ как быть? А​При необходимости вы можете​ Excel и при​ элементов управления ActiveX.​Включение или отключение печати​ и текстовых полей​

Обзор элементов управления формы

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

​ работники мои плохо​

​ проверить форму, прежде​

Изображение кнопки

Пример подписи (элемент управления формы)

​ желании распечатать ее.​ Пользовательские формы сделать​ элементов управления вместе​ в форме. Можно​Увеличение или уменьшение значению,​ установлен (значение включено),​ что соответствует выбору​ можно запросов к​ дату. Чтобы увеличить​ установлен (значение включено),​ значение, например числовое​ типа элементов управления:​

Изображение кнопки

​Лист — это тип​ использования. Стандартные элементы​ Для удобства также​ соображают по части​ чем распространять ее.​Более новые версии​ доступными из кода​

Пример группы (элемент управления формы)

​ с формой листа.​ изменить размер, поворот,​ например номер увеличения,​ снят (значение отключено)​ противоположных действий. На​ базе данных, чтобы​ значение, щелкните стрелку​

Изображение кнопки

Пример кнопки (элемент управления формы)

​ снят (значение отключено)​ значение, время или​ формы и элементы​ формы, которая позволяет​ управления примеры списками,​ приводим ссылку на​ офиса 2010, они​Защитите форму, как указано​ Office 2011 ​ VBA, созданный в​Удаление неиспользуемых элементов управления.​ отражение, цвета и​ время или дата.​ и смешанное состояние,​ листе или в​ заполнить поля со​

Изображение кнопки

​ вверх, чтобы уменьшить​ и смешанное состояние,​ дату. Чтобы увеличить​ управления ActiveX. Кроме​

Пример флажка (элемент управления формы)

​ для ввода и​ переключатели и кнопки​ оригинал (на английском​ могут работать лишь​ в описании шага​В меню​ редакторе Visual Basic.​Вы можете создавать формы​ объединение этих объектов​ Чтобы увеличить значение,​ то есть сочетание​ группе можно одновременно​ списком с элементами,​ — стрелку вниз.​ то есть сочетание​

Изображение кнопки

​ значение, щелкните стрелку​ этих наборов элементов​ просмотра данных в​ команд. Элементы управления​ языке) .​ с готовыми ячейками​

Пример переключателя (элемент управления формы)

​ 3.​Excel​ Ниже приведены пошаговые​ листа или без​ для создания более​ щелкните стрелку вверх;​ состояний «включено» и​ установить несколько флажков.​ при нажатии кнопки.​ Как правило, пользователь​ состояний «включено» и​ вверх, чтобы уменьшить​ управления можно также​ сетке и несколько​

Изображение кнопки

​ можно также выполнения​

Пример списка (элемент управления формы)

​Важно:​ и формулами. Хотелось​

  • ​Откройте форму еще раз,​выберите элемент​ инструкции по созданию​ линий сетки между​ сложных фигур. При​ Чтобы уменьшить значение,​ «отключено» (если поддерживается​ Флажок может иметь​ Можно также создавать​ также может вводить​

  • ​ «отключено» (если поддерживается​ — стрелку вниз.​ добавить объекты из​ функций управления like​ назначенных макросов и​ Эта функция недоступна в​

  • ​ облечить им работу​ заполните ее обычным​Параметры​ пользовательской:​ ячейками в фоновом​

Изображение кнопки

​ вводе текста непосредственно​ щелкните стрелку вниз.​ выбор нескольких элементов).​ одно из трех​ макросы, ответ на​ текст в связанную​ выбор нескольких элементов).​ Как правило, пользователь​ средства рисования, такие​ уже есть встроенные​ реагировать на события,​ Office на Компьютере​ не разносить все​ способом и сохраните​.​Вставьте UserForm пункт к​ режиме. Например может​ в объекте фигуры​ Как правило пользователь​

Пример поля со списком (элемент управления формы)

​Добавьте элементы ActiveX.​ состояний: установлен (значение​ события, связанные с​ ячейку или текстовое​Добавьте элементы ActiveX.​ также может вводить​ как автофигуры, объект​ листы Excel, например​ такие как щелчки​ с Windows RT.​ в ручную, а​ как копию.​В разделе​ книге. Доступ к​ потребоваться отключение линий​ или текстового поля,​ может ввести текстового​Создайте процедуры обработчика событий​ включено), снят (значение​ элементами управления ActiveX.​

Изображение кнопки

Пример полосы прокрутки (элемент управления формы)

​ поле.​Создайте процедуры обработчика событий​ текст непосредственно в​ WordArt, графический элемент​ комментарии и проверка​ мышью запустив Visual​ Хотите узнать, какая​ с помощью формы​ProstaK​Разработка​ книге пункт отображая​ сетки между ячейками​

Изображение кнопки

Пример счетчика (элемент управления формы)

​ текст станет частью​ значения в связанной​ для элементов ActiveX.​ отключено) и смешанное​ При взаимодействии пользователя​Увеличение или уменьшение значению,​ для элементов ActiveX.​ связанную ячейку или​ SmartArt или надписей.​ данных. Ячейки напоминать​ Basic для приложений​ версия пакета Office​

​ данные заносить по​​: Доброго времени суток!​выберите​ редактора Visual Basic​ и затем форматирование​ этого объекта, если​ ячейки или текстового​Пользовательские формы также позволяют​

​ состояние, то есть​ формы с элементом​ например номер увеличения,​Пользовательские формы также позволяют​ текстовое поле.​В следующих разделах описаны​ текстовые поля, в​ (VBA).​ используется?​ столбцам таблицы.​Есть файл, в​

Значок кнопки ​Представление​

Изображение кнопки ​ (нажмите клавиши ALT​ всех ячеек с​

Изображение кнопки ​ повернуть или отразить​ поля.​

Изображение кнопки ​ применять дополнительные функции​

Элементы ActiveX

​ сочетание состояний «включено»​ управления, позволяет обработать​ время или дата.​ применять дополнительные функции​На компьютере находятся многочисленные​ эти элементы управления​ том, что можно​С помощью Excel поддерживает​С помощью формы​vikttur​ нем таблица, которая​.​ + F11), а​ одного цвета или​ объект, текст будет​Позволяет увеличивать и уменьшать​ форм. Например, можно​ и «отключено» (если​

​ все события, возникающие​ Чтобы увеличить значение,​ форм. Например, можно​ элементы ActiveX, установленные​ и графических объектов​ вводить и форматировать​ несколько способов создания​ и многие элементы​: Тогда, если нет​ заполняется посредством «Формы​В разделе​ затем в меню​ узора или даже​ вращаться и отражается​ значение, например числовое​ программным образом добавить​ поддерживается выбор нескольких​ для этого элемента​ щелкните стрелку вверх;​ программным образом добавить​ приложением Excel и​ и также объясняется,​ их в различных​ форм печатной и​ управления и объекты,​

​ навыков работы с​ ввода данных в​Показывать на ленте​Вставка​ использование рисунка в​ вместе с ним.​ значение, время или​

​ отдельный переключатель для​​ элементов).​ управления запускается код​ Чтобы уменьшить значение,​ отдельный переключатель для​ другими программами, такими​ как работать с​ способов. Ячейки часто​ сети.​ которые можно добавить​ формами в VBA​ таблицу» проблема в​установите флажок​выберите щелкнув​

​ качестве фона листа.​ В отличие от​ дату. Чтобы увеличить​ каждой буквы алфавита​Изменение положения или размера​ VBA.​ щелкните стрелку вниз.​ каждой буквы алфавита​ как Calendar Control​ этими элементами управления​ используются как названия​

Обзор элементов управления ActiveX

​Группирует связанные элементы управления​ к ним, можно​ — только заказывать​ том, что данные​Вкладка «Разработчик»​UserForm​ Чтобы скрыть или​ элементов управления ActiveX​ значение, щелкните стрелку​ или флажок для​ элемента управления относительно​

​На компьютере находятся многочисленные​ Как правило пользователь​ или флажок для​ 12.0 и проигрыватель​ и объектами более​ и регулируйте высоту​ в виде прямоугольника​ упростить ввод данных​ работу в платном​

Изображение кнопки

​ в таблицу переносятся​.​.​ отобразить линии сетки,​

Пример флажка (элемент ActiveX)

​ можно назначить различные​ вверх, чтобы уменьшить​ каждого элемента в​ ячейки.​ элементы ActiveX, установленные​ может ввести текстовое​ каждого элемента в​ Windows Media.​ подробно.​ и ширину ячейки​ с необязательной подписью.​ на листе и​ разделе. Вряд ли​ строго последовательно (т.е.​В правой части ленты​Создайте процедуру для отображения​

Изображение кнопки

​ на вкладке​ атрибуты, например, размер​ — стрелку вниз.​

Пример текстового поля (элемент ActiveX)

​ крупном списке дат​Позволяет, в прямоугольник, просмотр,​ приложением Excel и​ значение непосредственно в​ крупном списке дат​Группы связанных элементов управления​Простой список поддерживает выбор​ и объединение ячеек,​ Обычно группируются переключатели,​

Изображение кнопки

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

Пример кнопки (элемент ActiveX)

​ большую форму задаром​ записи из двух​и выберите пункт​Добавление элементов управления ActiveX.​в группе​ шрифта, отдельные слова​ также может вводить​Несвязный выбор нескольких позволяет​ текст или данных,​ как Calendar Control​ текстового поля.​Список, разрешающий несвязный выбор​ прямоугольник с необязательно​ Такой список похож​ лист поведению форму​

Изображение кнопки

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

Пример переключателя (элемент ActiveX)

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

Изображение кнопки

​ не первая, а​

Пример списка (элемент ActiveX)

​.​ ActiveX.​

  • ​снимите или установите​ объекте. Также можно​ ячейку или текстовое​ также расположенных рядом​ Текстовое поле также​ Windows Media.​ Следующие элементы управления недоступны​ выбрать один элемент,​ сгруппированные переключателей, флажков​ но позволяет отобразить​

  • ​ Другие функции управления​ способ ввода или​ нет необходимости Microsoft​ напишете.​

  • ​ третья), в связи​В разделе​Напишите процедуры обработчика событий​ флажок​ назначать макросы и​

Изображение кнопки

​ поле.​ элементов.​ может быть статическое​Важно:​ в книгах Office​ расположенные рядом элементы,​ или тесно связанного​ большее количество элементов​ like, например примечания​ отображения одной строки​ Visual Basic для​Мотя​ с чем прошу​Настройки​ для элементов управления​Сетка​ добавлять гиперссылки на​Подпись​Расширенные списка со множественным​

Пример поля со списком (элемент ActiveX)

​ текстовое поле, которое​ Не все элементы управления​ Excel 2007. В​ а также разрозненные​ содержимого.​ в меньшей области.​ к ячейкам, гиперссылки,​ данных из диапазона​ приложений (VBA).​: Уважаемая Ирина!​ помочь сделать так,​установите флажок​ ActiveX.​.​ эти объекты. Можно​Указывает назначение ячейки или​ выбором включает один​ содержит сведения только​ ActiveX можно использовать​

Изображение кнопки

​ Excel версий 5.0​

Пример выключателя (элемент ActiveX)

​ элементы.​Включает или отключает значение,​Использование элементов управления формы​ фоновые изображения, проверки​ или таблицы, не​

Изображение кнопки

Пример счетчика (элемент ActiveX)

​Форма листа не то​Не изобретайте велосипед!​ что бы данные​Разработчик​С помощью пользовательские формы,​Существует три различных типа​ даже связывать текста​ текстового поля, содержит​ элемент, расположенных элементов​ для чтения.​ непосредственно на листах;​ Диалоговые листы только​

Изображение кнопки

Пример полосы прокрутки (элемент ActiveX)

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

Изображение кнопки

​ описание (заголовки, подписи,​

Пример подписи (элемент ActiveX)

​ и выбора несмежных​На фоне формы листа​ Некоторые можно использовать​ можно использовать эти​ выбором включает один​

Изображение кнопки

​ противоположных действий. На​

Пример изображения (элемент ActiveX)

​ ссылки и взаимодействовать​ внедренные диаграммы и​ прокрутки. Использовать форму​

​ шаблонов Excel. Шаблон​

Пример рамки (элемент ActiveX)

​ EXCEL (2003, 2007,​ а в строку,​На вкладке​ функции расширенного формы.​ объекты, которые можно​ текстовое поле объект​ рисунки) или краткие​ (или разрозненные).​

​ можно отобразить или​​ только на Visual​ элементы управления.​​ элемент, расположенных элементов​​ листе или в​​ с данными ячейку​​ Автофильтр может сделать​ данных может быть​ — готовые файлов,​ 2010 — про​​ в которой есть​​Разработчик​​ Например программным способом​​ изменять однозначно, вы​

Изображение кнопки

​ с ячейкой листа​

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

Объекты средств рисования

Примеры фигур​ 2013 не знаю)​ активная ячейка.​выберите элемент управления,​ можно добавить отдельные​ может не наверняка​ и динамическое отображение​Изображение​ поля и раскрывающегося​ Например, может потребоваться​ (VBA) пользовательские формы.​ компьютере элементов ActiveX,​ (или разрозненные).​ установить несколько флажков.​ VBA и вы​ листа.​ между столбцами, которых​ приступить к созданию​ штатный режим «Форма»​_Boroda_​ который хотите добавить.​ переключатель для каждой​ знаете, какой тип​ обновленных значений в​Выводит изображение, например точечный​ списка. Поле со​ отключить линии сетки​ При попытке добавить​ которые можно добавить​Представляет собой сочетание текстового​ Флажок может иметь​ хотите добавить элементы​Так как элементы управления​ слишком много для​ книги, которая выглядит​ достаточно «кривой» и​: Допишите еще вот​На листе щелкните место,​

Работа с элементами управления и объектами на листе

​ буквы алфавита или​ элемента управления —​ этих объектов.​ рисунок, JPEG или​ списком компактнее обычного​ ячеек и затем​ любого из этих​ в настраиваемую форму​ поля и раскрывающегося​ одно из трех​

  • ​ управления листы диаграмм.​ и объекты хранятся​ одновременного отображения на​ так, как нужно.​ ограничен 32 полями​ так​ куда нужно вставить​

  • ​ можно добавить флажок​ просто просмотрев его.​После добавления форм и​ GIF.​

  • ​ списка, однако чтобы​ применить ко всем​ определенного элементов ActiveX​

  • ​ (например, элементы Calendar​ списка. Поле со​ состояний: установлен (значение​ Например добавив элемент​

  • ​ на полотно, можно​ экране. Форму данных​ Форма содержит элементы​ БД.​

  • ​Dim iLastRow As Long​ элемент управления.​ для каждого элемента​

  • ​ Определение типа элемента​ элементами ActiveX в​Рамка​ отобразить список элементов,​

  • ​ ячейкам один и​ на листе Excel​ Control 12.0 или​

  • ​ списком компактнее обычного​

​ включено), снят (значение​ управления списком на​ отобразить или просматривать​ можно применять тогда,​ управления, например поля​Установите​r0_ = 12​Чтобы задать свойства элемента​ в большом списке​ управления (в форме​ форме листа, обычно​Прямоугольный объект с подписью​ пользователь должен щелкнуть​ тот же цвет​ с сообщением «Не​ проигрывателя Windows Media).​​ списка, однако чтобы​​ отключено) и смешенное​​ лист и связь​​ элементы управления и​ когда достаточно простой​​ или раскрывающиеся списки,​​БЕСПЛАТНУЮ надстройку​

Определение типа элемента управления на листе

​Do While Range(«C»​ управления, щелкните его,​ дат и чисел.​ или ActiveX), выберите​ требуется выполнить точную​ необязательно, группы, связанные​ стрелку вниз. Поле​ либо узор или​ удается вставить объект».​ В этом диалоговом​ отобразить список элементов,​ состояние, то есть​ с ячейкой, можно​ объекты вместе с​ формы с текстовыми​

  • ​ которые может упростить​, ссылку на которую​​ & r0_ +​​ удерживая нажатой клавишу​Перед созданием пользовательских форм​ и щелкните правой​ настройку и изменение​

  • ​ элементы управления в​ со списком следует​​ даже использовать в​​Однако нельзя добавить элементы​ окне также можно​

    ​ пользователь должен щелкнуть​​ сочетание состояний «включено»​ возвращать числовое значение​ связанного текста, не​ полями, в качестве​ для пользователей, используйте​ на форуме для​ n_) <> «»​ CONTROL, и выберите​

  • ​ рассмотрите возможность применения​ кнопкой мыши элемент​​ положения элементов в​​ единый блок. Как​

Пользовательские формы VBA

​ использовать, когда требуется​ качестве фона листа​ управления ActiveX до​ зарегистрировать пользовательский элемент​ стрелку вниз. Поле​ и «отключено» (если​ для текущего положения​ изменяя вида сетки​ подписей которых используются​ для ввода или​ всех любезно предложил​n_ = n_​ пункт​ встроенных диалоговых окон,​

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

  2. ​ заголовки столбцов, и​ редактирования данных на​

  3. ​один из самых уважаемых​

  4. ​ + 1​Формат элемента управления​

  5. ​ доступных в Excel.​ Отображение контекстного меню:​ хорошо спроектированный понятное​

​ управления frame сгруппированы​ элементов в список​ или отобразить линии​ или листы диаграмм​Текстовое поле​ использовать, когда требуется​ элементов).​ элементе управления. Затем​ на листе независимо​ когда не требуются​ листе. Чтобы найти​

​ экспертов форума​Loop​.​ Они включают функции​Если контекстное меню содержит​ форма пользователя. Ниже​​ переключателей, флажков или​​ и выбора из​​ сетки, на вкладке​​ из пользовательского интерфейса.​​Список со списком -​​ обеспечить возможность ввода​​Выбор или отмена выбора​​ можно использовать это​​ от границы строк​​ сложные или пользовательские​ дополнительные сведения о​​-​​iLastRow = r0_​В окне​ VBA​

​ команду​ перечислены распространенные задачи.​ тесно связанного содержимого.​

​ него одного элемента.​

support.office.com

Создание форм для заполнения и печати в Excel

​ Вид в группе​ Нельзя назначить макрос​ изменение​ элементов в список​ элементов управления с​ числовое значение в​ и столбцов. В​ возможности, например списки​ шаблонах можно загрузить,​ZVI​ + n_​Формат объекта​

Шаг 1. Отображение вкладки «Разработчик».

​InputBox​Свойства​

  1. ​Управление отображением линий сетки​​Примечание:​​ В этом элементе​​ Показать снимите или​​ непосредственно из элемента​

  2. ​Поле со списком раскрывающееся​​ и выбора из​​ целью указания свойств​​ сочетании с функцией​​ большинстве случаев, многие​

  3. ​ и счетчики.​​ читайте статью шаблонов​​.​​Cells(iLastRow, 3) =​​задайте такие свойства​

  1. ​и​, элемент управления является​Всплывающее меню ​ при работе с​​ Элемент управления ActiveX рамки​​ управления отображается текущее​

  2. ​ установите флажок Сетка.​​ управления ActiveX точно​​ — редактирования​​ него одного элемента.​​ или дополнительной настройки.​

Шаг 2. Добавление и форматирование элементов управления содержимым

  1. ​индекс​​ из этих элементов​​Microsoft Excel может​ Excel.​

  2. ​Надстройка:​ Me.TextBox10​ элемента управления, как​

  3. ​MsgBox​ элементом ActiveX и​ элементами управления и​ в разделе​ значение независимо от​​Поскольку существует три разных​​ так же, вы​

  4. ​Диалоговое окно выполнить​​ В этом элементе​​Включает или отключает значение,​для выбора различных​ управления могут быть​ автоматически создать встроенную​

  5. ​Формы, печати и онлайн-ли​1. не имеет​ProstaK​

Шаг 3. Защита листа, содержащего форму

  1. ​ шрифт, выравнивание и​​, метод Excel​​ сейчас используется режим​ принятии решения о​​Элементы ActiveX​​ того, каким образом​​ типа элементов управления​​ можете из элемента​

  2. ​Элементы ActiveX можно использовать​

  3. ​ управления отображается текущее​

    ​ что соответствует выбору​​ элементов из списка.​ связаны в ячейки​ форму данных для​​ документ предназначен с​​ ограничения на количество​:​​ цвет.​​InputBox​​ конструктора.​​ вывода линий сетки​

Шаг 4. Проверка формы (необязательно)

​: команда «​ оно было введено.​ и объектов, которые​

  1. ​ управления формы.​ в формах на​ значение независимо от​

  2. ​ противоположных действий. На​Список, разрешающий несвязный выбор​ на листе и​ диапазон или таблица.​

support.office.com

Форма ввода в таблицу (Макросы/Sub)

​ стандартные структура и​​ полей БД,​
​_Boroda_​Повторите действия 1–4 для​, метод​Если контекстное меню содержит​ на готовой форме​Вставить​Объединяет текстового поля со​ можно изменять уникальным​Выводит список доступных на​ листах, с или​ того, каким образом​ листе или в​ нескольких строк, позволяет​ не требует кода​ Форма данных отображает​ формат, который упрощает​2. позволяет одним​, Александр, спасибо!​ каждого добавляемого элемента​GetOpenFilename​

​ команду​​ листа.​» недоступна. Тем​
​ списком, чтобы создать​
​ образом, иногда невозможно​
​ компьютере элементов ActiveX,​ без использования кода​ оно было введено.​
​ группе можно установить​ выбрать один элемент,​
​ VBA, чтобы сделать​
​ все заголовки столбцов​ записывать, упорядочивать и​
​ движением мыши изменить​Все работает, тему​

​ управления.​​, метод​​Назначить макрос​​Выбор или Отмена выбора​
​ не менее можно​ поле со списком.​

excelworld.ru

создание в Excel 2010 формы для ввода данных в форматированную таблицу

​ точно определить тип​​ которые можно добавить​ VBA и на​Объединяет текстового поля со​ несколько флажков. Флажок​ расположенные рядом элементы,​ их работы. Можно​ в виде подписей​

​ изменение сведений.​​ размеры формы,​ можно закрывать.​В меню​GetSaveAsFilename​, это элемент управления​ элементов управления с​;)

​ добавить элемент управления​​ Поле со списком​ элемента управления по​ в настраиваемую форму​ пользовательские формы VBA.​ списком, чтобы создать​ может иметь одно​ а также разрозненные​ настроить свойства, определяющие​ в одном диалоговом​Печатной формы, содержащие инструкции,​3. содержит необходимый​Ирина​Сервис​и объект Dialogs​ формы.​ целью указания свойств​ в диалоговом окне​ более компактную чем​

​ его внешнему виду.​​ (например, элементы Calendar​ Как правило используйте​ поле со списком.​ из трех состояний:​ элементы.​ ли элемент управления​ окне. Каждая метка​ форматирование, меток и​ минимум инструментов для​: Здравствуйте, подскажите пожалуйста:​наведите указатель на​

​ объекта​​Совет:​
​ или дополнительной настройки.​
​Другие элементы управления​ поле со списком,​ Чтобы определить тип​ Control 12.0 или​ элементы управления ActiveX,​ Поле со списком​ установлен (значение включено),​Тем не менее эти​
​ расположенном свободно или​​ имеет смежных пустое​​ пустого пространства для​ работы по ведению​ можно ли в​​ пункт​Application​​ Чтобы отобразить правильное контекстное​​Изменение текста элемента управления,​​, выбрав​
​ но пользователь должен​
​ элемента управления (элемент​ проигрывателя Windows Media).​ при необходимости более​
​ более компактную чем​ снят (значение отключено)​ элементы управления невозможно​
​ перемещение и изменяет​ текстовое поле, в​ написания или ввод​ БД.​

planetaexcel.ru

​ excel 2010 создать​

Тема 10. Создание форм в MS Excel с использованием элементов
управления.

КРАТКАЯ
СПРАВКА

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

MS Excel предоставляет
возможность создавать формы, предназначенные для печати или использования в
интерактивном режиме. Интерактивные формы могут содержать элементы управления,
например, переключатели и раскрывающиеся списки. Можно настроить защиту
интерактивной формы, установив параметры, позволяющие вводить данные только в
определенные ячейки, при этом введенные данные можно будет проверять, что
позволит предотвратить ввод неверных данных.

Таким
образом, формы создаются на рабочем листе
MS Excel и оформляются
элементами управления, которые вызываются командой Вид/Панели
инструментов/Формы
.

При
настройке элементов управления часто используют функцию ИНДЕКС.

Эта
функция возвращает значение или ссылку на значение из таблицы или диапазона.
Функция ИНДЕКС имеет две синтаксические формы: ссылка и массив. Если первый
аргумент функции ИНДЕКС является массивом констант, лучше использовать форму
массива.

ИНДЕКС(массив;номер_строки;номер_столбца)

Массив   —
диапазон ячеек или массив констант.

     Если массив
содержит только одну строку или один столбец, аргумент «номер_строки» (или,
соответственно, «номер_столбца») не является обязательным.

     Если массив
занимает больше одной строки и больше одного столбца, а из аргументов
«номер_строки» и «номер_столбца» задан только один, то функция ИНДЕКС
возвращает массив, состоящий из целой строки или целого столбца аргумента
«массив».

Номер_строки   —
номер строки в массиве, из которой требуется возвратить значение. Если аргумент
«номер_строки» опущен, аргумент «номер_столбца» является обязательным.

Номер_столбца   —
номер столбца в массиве, из которого требуется возвратить значение. Если
аргумент «номер_столбца» опущен, аргумент «номер_строки» является обязательным.

Замечания:

     Если используются
оба аргумента — и «номер_строки», и «номер_столбца», — то функция ИНДЕКС
возвращает значение, находящееся в ячейке на пересечении указанных строки и
столбца.

     Если задать для
аргумента «номер_строки» или «номер_столбца» значение 0, функция ИНДЕКС
возвратит массив значений для целого столбца или, соответственно, целой строки.
Чтобы использовать массив значений, введите функцию ИНДЕКС как формулу массива (Формула массива. Формула, выполняющая несколько
вычислений над одним или несколькими наборами значений, а затем возвращающая
один или несколько результатов. Формулы массива заключены в фигурные скобки { }
и вводятся нажатием клавиш CTRL+SHIFT+ВВОД.)
в горизонтальный
диапазон ячеек для строки и в вертикальный для столбца. Чтобы ввести формулу
массива, нажмите клавиши CTRL+SHIFT+ВВОД.

     Значения
аргументов «номер_строки» и «номер_столбца» должны указывать на ячейку внутри
заданного массива; в противном случае функция ИНДЕКС возвращает значение ошибки
#ССЫЛ!.

Например:

Дана
таблица (рис.10.1.)

Рис.10.1.
Таблица с данными

Для
этих данных функция ИНДЕКС будет обозначать:

=ИНДЕКС(A2:B3;2;2)

Значение
ячейки на пересечении второй строки и второго столбца в диапазоне (Груши)

=ИНДЕКС(A2:B3;2;1)

Значение
ячейки на пересечении второй строки и первого столбца в диапазоне (Бананы)

Примеры
выполненных  заданий:

Пример
№1:

Создать
приложение «Смета» для комплектации встраиваемой техники для кухни. Приложение
должно обеспечить удобный ввод данных  с использованием элементов управления:
полей со списком, переключателей, флажков, счетчиков, т.е. иметь следующий вид
(рис.10.2.):

Рис.10.2. 
Вид готовой формы.

Решение:

Разработку
сметы следует начать с создания и оформления листов.

Оформим
лист «Смета» (рис.10.3.):

Рис.10.3.
Лист «Смета»

Оформим
лист «Холодильники» (рис.10.4.):

Наименование

Цена

Производитель

не
заказывать

$0

нет

ARISTON
OSK VE 160L

$325

Италия

ARISTON
OSK VG 160L

$325

Италия

ARISTON
OSK VU 160L

$337

Италия

ARISTON
OK DF 290L

$457

Италия

ARISTON
OK DF 290NFL

$559

Италия

ARISTON
K DF 290VNF

$559

Италия

ARISTON
K-RF 310D

$578

Италия

ARISTON
OK-RF 3300VL

$604

Италия

ARISTON
OK-RF 3300VL-DX

$604

Италия

ARISTON
OK-RF 3300NFL

$742

Италия

BOSCH
KUR 1506

$568

Германия

BOSCH
GUL 1205

$630

Германия

BOSCH
KIF 2040

$676

Германия

Рис.10.4.
Лист «Холодильники»

Оформим
лист «Духовки» (рис.10.5.):

Наименование

Цена

Производитель

не
заказывать

$0

нет

ARDO
HCOO EB2(BR)

$196

Италия

ARDO
FSOO EB(VVH)

$209

Италия

ARISTON
FS 41(VVH)

$216

Италия

ARISTON
FS 41(BK)

$221

Италия

ARISTON
HD 87C(VVH)

$488

Италия

BOSCH
HEN 3560

$761

Германия

BOSCH
HBN 8550

$1 936

Германия

FAGOR
2H 436

$397

Испания

KAISER
EBb28TtKDpRL

$740

Германия

KAISER
EB28TeKDSL

$472

Германия

KAISER
EB28TeKDSprL

$478

Германия

KAISER
EHK285TeKDW

$498

Германия

SIEMENS
HB 28064 EU

$643

Германия

SIEMENS
HB 28054 EU

$723

Германия

SIEMENS
HB 49E64 EU

$1 095

Германия

Рис.10.5.
Лист «Духовки»

Оформим
лист «Посудомоечные машины» (рис.10.6.):

Наименование

Цена

Производитель

не
заказывать

$0

нет

ARDO
ME 5661

$213

Италия

ARDO
LF 9212 A1

$351

Италия

ARISTON
LSV 61(IX)

$390

Италия

ARISTON
LSV 61(BR)

$391

Италия

ARISTON
LSV 62(VVH)

$396

Италия

ARISTON
KLS 43 SFL(VVH)

$437

Италия

ARDO
LS 9209 X

$437

Италия

ARISTON
K-CD 12 TX(BR)

$458

Италия

ARISTON
K-CD 12 TX(BX)

$550

Италия

Рис.10.6.
Лист «Посудомоечные машины»

Оформим
лист «Стиральные машины» (рис.10.7.):

Наименование

Цена

Производитель

не
заказывать

$0

нет

ARISTON
K-CD 12 TX(BK)

$550

Италия

SIEMENS
VVK 61420

$1 424

Германия

Рис.10.7.
Лист «Стиральные машины»

На
листе «Смета»  в ячейке В3 определить текущую дату с помощью функции  =СЕГОДНЯ(), 
а в ячейку
D3 ввести текущий
курс доллара, например  28,8 рублей.

Создание
формы и настройка элементов управления

1. Необходимо
отобразить панель инструментов «Форма» (Вид – Панели инструментов – Форма) и
установить соответствующие элементы управления следующим образом: 

2. На лист «Смета» в
строке 5 напротив Холодильник следует поместить элемент управления  Поле
со списком
(рис.10.8.), он будет использован для выбора марки холодильника
из справочника, расположенного на листе «Холодильники».

Рис.10.8.
Образец расположения элемента управления «Поле со списком»

Для
настройки элемента управления следует выбрать команду контекстного меню Формат
объекта

В
окне «Формат элемента управления» выбрать вкладку Элемент управления и
установить следующие параметры (рис.10.9.):

Рис.10.9. 
Образец заполнения окна «Формат элементов управления»

Для
остальных видов встраиваемой техники установить и настроить поля со списком
аналогично.

3. В ячейку В5
ввести формулу вывода стоимости выбранной техники:  =ИНДЕКС(Холодильники!В2:В15;Е5)

В
ячейки В7, В9  и  В11 ввести аналогичные формулы.

4. В ячейку В13
ввести формулу вывода общей стоимости выбранной техники:  
=СУММА(В5;В7;В9;В11)

5. Установить 2
элемента  Переключатель напротив Гарантии  и сделать обрамление
элементом Рамка (рис.10.10.)

         

Рис.10.10.
Образец оформления элементов управления

Для
настройки элемента управления Переключатель следует выбрать команду
контекстного меню Формат объекта

В
окне «Формат элемента управления» выбрать вкладку Элемент управления и
установить следующие параметры (рис.10.11.):

Рис.10.11.
Образец заполнения окна «Формат элемента управления»

Измените
тексты переключателей и рамки на соответствующие образцу.

6. В ячейку В15
ввести формулу вычисления стоимости гарантии (гарантия 6 месяцев – бесплатная,
а гарантия 1 год – 10% от стоимости комплекта):   =ЕСЛИ(Е15=1;0;В13*10%)

7. Установить
элемент  Флажок напротив Доставки и изменить текст надписи на
«Нужна» (рис.10.12.):

Рис.10.12.
Образец элемента управления «Флажок»

Для
настройки элемента управления Флажок  следует выбрать команду
контекстного меню Формат объекта

В
окне «Формат элемента управления» выбрать вкладку Элемент управления и
установить следующие параметры (рис.10.13.):

Рис.10.13. Образец
заполнения окна «Формат элемента управления»

8.  В ячейку В17
ввести формулу для вычисления надбавки за доставку (например 10$):   =ЕСЛИ(Е17=ИСТИНА;10;0)

9. Установить
элемент  Счетчик напротив Скидки (рис.10.14.):

Рис.10.14.
Элемент управления «Счетчик»

Для
настройки элемента управления Счетчик  следует выбрать команду
контекстного меню Формат объекта

В
окне «Формат элемента управления» выбрать вкладку Элемент управления и
установить следующие параметры (рис.10.15.):

Рис.10.15. Образец
заполнения окна «Формат элемента управления»

10. В ячейку В19
ввести формулу для вычисления размера скидки в процентах:   =Е19/100

11. В ячейку В21
ввести формулу для вычисления общей стоимости (в долларах) выбранного комплекта
техники: 

  
=СУММ(В13;В15;В17)*(100%-В19)

12. В ячейку В23
ввести формулу для вычисления суммы в рублях:    =В21*
D3

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

Для
этого необходимо выделить любую ячейку столбца и выполнить команду  [Формат] 
à  [Столбец]  à  [Скрыть]

Скачано с www.znanio.ru

Понравилась статья? Поделить с друзьями:
  • Интерактивной визуализации данных в excel
  • Интерактивное создание таблиц excel
  • Интерактивная таблица в excel это
  • Интерактивная справка word 2019
  • Интерактивная карта россии excel