Как создать окно ввода в 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, то сможете сделать этот инструмент максимально гибким и подходящим под ваши нужды.

В этой заметке описываются методы создания пользовательских диалоговых окон, которые существенно расширяют стандартные возможности Excel. Диалоговые окна – это наиболее важный элемент пользовательского интерфейса в Windows. Они применяются практически в каждом приложении Windows, и большинство пользователей неплохо представляет, как они работают. Разработчики Excel создают пользовательские диалоговые окна с помощью пользовательских форм (UserForm). Кроме того, в VBA имеются средства, обеспечивающие создание типовых диалоговых окон.[1]

Рис. 1. Работа процедуры GetName

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

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

Использование окон ввода данных

Окно ввода данных — это простое диалоговое окно, которое позволяет пользователю ввести одно значение. Например, можно применить окно ввода данных, чтобы предоставить пользователю возможность ввести текст, число или диапазон значений. Для создания окна ввода предназначены две функции InputBox: одна— в VBA, а вторая является методом объекта Application.

Функция InputBox в VBA

Функция имеет следующий синтаксис:

InputBox(запрос [, заголовок] [, по_умолчанию] [, xpos] [, ypos] [, справка, раздел])

  • Запрос. Указывает текст, отображаемый в окне ввода (обязательный параметр).
  • Заголовок. Определяет заголовок окна ввода (необязательный параметр).
  • По_умолчанию. Задает значение, которое отображается в окне ввода по умолчанию (необязательный параметр).
  • xpos, ypos. Определяют координаты верхнего левого угла окна ввода на экране (необязательные параметры).
  • Справка, раздел. Указывают файл и раздел в справочной системе (необязательные параметры).

Функция InputBox запрашивает у пользователя одно значение. Она всегда возвращает строку, поэтому результат нужно будет преобразовать в числовое значение. Текст, отображаемый в окне ввода, может достигать 1024 символов (длину допускается изменять в зависимости от ширины используемых символов). Если определить раздел справочной системы, то в диалоговом окне будет отображена кнопка Справка.

Процедура GetName запрашивает у пользователя полное имя (имя и фамилию). Затем программа выделяет имя и отображает приветствие в окне сообщения (см. рис. 1; код функции можно найти в файле VBA inputbox.xlsm).

Sub GetName()

    Dim UserName As String

    Dim FirstSpace As Integer

    Do Until UserName <> «»

        UserName = InputBox(«Укажите имя и фамилию: «, _

            «Назовите себя»)

    Loop

    FirstSpace = InStr(UserName, » «)

    If FirstSpace <> 0 Then

        UserName = Left(UserName, FirstSpace 1)

    End If

    MsgBox «Привет « & UserName

End Sub

Обратите внимание: функция InputBox вызывается в цикле Do Until. Это позволяет убедиться в том, что данные введены в окно. Если пользователь щелкнет на кнопке Отмена или не введет текст, то переменная UserName будет содержать пустую строку, а окно ввода данных появится повторно. Далее в процедуре будет предпринята попытка получить имя пользователя путем поиска первого символа пробела (для этого применяется функция InStr). Таким образом, можно воспользоваться функцией Left для получения всех символов, расположенных слева от символа пробела. Если символ пробела не найден, то используется все введенное имя.

Если строка, предоставленная в качестве результата выполнения функции InputBox, выглядит как число, ее можно преобразовать с помощью функции VBA Val.

В процедуре GetWord пользователю предлагается ввести пропущенное слово (рис. 2). Этот пример также иллюстрирует применение именованных аргументов (р и t). Текст запроса выбирается из ячейки А1 рабочего листа.

Sub GetWord()

    Dim TheWord As String

    Dim p As String

    Dim t As String

    p = Range(«A1»)

    t = «Какое слово пропущено?»

    TheWord = InputBox(prompt:=p, Title:=t)

    If UCase(TheWord) = «ВОДОКАЧКУ» Then

        MsgBox «Верно.»

    Else

        MsgBox «Не верно.»

    End If

End Sub

Рис. 2. Использование функции VBA inputBox, отображающей запрос

Метод Excel InputBox

Метод Excel InputBox по сравнению с функцией VBA InputBox предоставляет три преимущества:

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

Метод InputBox имеет следующий синтаксис.

InputBox(запрос, [, заголовок], [, по_умолчанию], [, слева], [, сверху], [, справка, раздел], [, тип])

  • Запрос. Указывает текст, отображаемый в окне ввода (обязательный параметр).
  • Заголовок. Определяет заголовок окна ввода (необязательный параметр).
  • По_умолчанию. Задает значение, которое отображается в окне ввода по умолчанию (необязательный параметр).
  • Слева, сверху. Определяют координаты верхнего левого угла окна ввода на экране (необязательные параметры).
  • Справка, раздел. Указывают файл и раздел в справочной системе (необязательные параметры).
  • Тип. Указывает код типа данных, который будет возвращаться методом (необязательный параметр; значения см. рис. 3).

Рис. 3. Коды типов данных, возвращаемые методом Excel InputBox

Используя сумму приведенных выше значений, можно возвратить несколько типов данных. Например, для отображения окна ввода, которое принимает текстовый или числовой тип данных, установите код равным 3 (1 + 2 или число + текст). Если в качестве кода типа данных применить значение 8, то пользователь сможет ввести в поле адрес ячейки или диапазона ячеек. Пользователь также можент выбрать диапазон на текущем рабочем листе.

В процедуре EraseRange используется метод InputBox. Пользователь может указать удаляемый диапазон (рис. 4). Адрес диапазона вводится в окно вручную, или выделяется мышью на листе. Метод InputBox с кодом 8 возвращает объект Range (обратите внимание на ключевое слово Set). После этого выбранный диапазон очищается (с помощью метода Clear). По умолчанию в поле окна ввода отображается адрес текущей выделенной ячейки. Если в окне ввода щелкнуть на кнопке Отмена, то оператор On Error завершит процедуру.

Sub EraseRange()

    Dim UserRange As Range

    On Error GoTo Canceled

    Set UserRange = Application.InputBox _

        (Prompt:=«Удаляемый диапазон:», _

        Title:=«Удаление диапазона», _

        Default:=Selection.Address, _

        Type:=8)

    UserRange.Clear

    UserRange.Select

Canceled:

End Sub

Рис. 4. Пример использования метода InputBox для выбора диапазона

Если в процедуре EraseRange ввести не диапазон адресов, то Excel отобразит сообщение (рис. 5) и позволит пользователю повторить ввод данных.

Рис. 5. Метод InputBox автоматически проверяет вводимые данные

Функция VBA MsgBox

Функция VBA MsgBox служит для отображения сообщения. Также она передает результат щелчка на кнопке ОК или Отмена). Синтаксис функции:

MsgBox(запрос[, кнопки][, заголовок][, справка, раздел])

  • Запрос. Определяет текст, который будет отображаться в окне сообщения (обязательный параметр).
  • Кнопки. Содержит числовое выражение (или константу), которое определяет кнопки, отображаемые в окне сообщения (необязательный параметр; рис. 6). Также можно задать кнопку по умолчанию.
  • Заголовок. Содержит заголовок окна сообщения (необязательный параметр).
  • Справка, раздел. Указывают файл и раздел справочной системы (необязательные параметры).

Рис. 6. Константы и значения, используемые для выбора кнопок в функции MsgBox

Первая группа значений (0–5) описывает номер и тип кнопок в диалоговом окне. Вторая группа (16, 32, 48, 64) описывает стиль значка. Третья группа (0, 256, 512) определяет, какая кнопка назначена по умолчанию. Четвертая группа (0, 4096) определяет модальность окна сообщения. Пятая указывает, показывать ли окно сообщений поверх других окон, устанавливает выравнивание и направление текста. В процессе сложения чисел для получения окончательного значения аргумента Buttons следует использовать только одно число из каждой группы.

Можно использовать функцию MsgBox в качестве процедуры (для отображения сообщения), а также присвоить возвращаемое этой функцией значение переменной. Функция MsgBox возвращает результат, представляющий кнопку, на которой щелкнул пользователь. В следующем примере отображается сообщение и не возвращается результат (код функций, приведенных в этом разделе см. также в файле VBA msgbox.xlsm).

Sub MsgBoxDemo()

    MsgBox «При выполнении макроса ошибок не произошло.»

End Sub

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

Sub GetAnswer()

    Dim Ans As Integer

    Ans = MsgBox(«Продолжать?», vbYesNo)

    Select Case Ans

        Case vbYes

            ‘ … [код при Ans равно Yes]

        Case vbNo

            ‘ ... [код при Ans равно No]

    End Select

End Sub

Рис. 7. Константы, возвращаемые MsgBox

Функция MsgBox возвращает переменную, имеющую тип Integer. Вам необязательно использовать переменную для хранения результата выполнения функции MsgBox. Следующая процедура представляет собой вариацию процедуры GetAnswer.

Sub GetAnswer2()

    If MsgBox(«Продолжать?», vbYesNo) = vbYes Then

‘ … [код при Ans равно Yes]

    Else

... [код при Ans равно No]

    End If

End Sub

В следующем примере функции используется комбинация констант для отображения окна сообщения с кнопками Да, Нет и знаком вопроса (рис. 8). Вторая кнопка (Нет) используется по умолчанию. Для простоты константы добавлены в переменную Config.

Private Function ContinueProcedure() As Boolean

   Dim Config As Integer

   Dim Ans As Integer

   Config = vbYesNo + vbQuestion + vbDefaultButton2

   Ans = MsgBox(«Произошла ошибка. Продолжить?», Config)

   If Ans = vbYes Then ContinueProcedure = True _

      Else ContinueProcedure = False

End Function

Рис. 8. Параметр Кнопки функции MsgBox определяет кнопки, которые отображаются в окне сообщения

В файле VBA msgbox.xlsm функция ContinueProcedure в демонстрационных целях представлена в виде процедуры. Функция ContinueProcedure может вызываться из другой процедуры. Например, оператор

If Not ContinueProcedure() Then Exit Sub

вызывает функцию ContinueProcedure (которая отображает окно сообщения). Если функция возвращает значение ЛОЖЬ (т.е. пользователь щелкнул на кнопке Нет), то процедура будет завершена. В противном случае выполняется следующий оператор.

Если в сообщении необходимо указать разрыв строки (рис. 9), воспользуйтесь константой vbCrLf (или vbNewLine):

Sub MultiLine()

    Dim Msg As String

    Msg = «Это первая строка.» & vbCrLf & vbNewLine

    Msg = Msg & «Вторая строка.» & vbCrLf

    Msg = Msg & «Третья строка.»

    MsgBox Msg

End Sub

Рис. 9. Разбиение сообщения на несколько строк

Для включения в сообщение символа табуляции применяется константа vbTab. В процедуре ShowRange окно сообщения используется для отображения диапазона значений размером 10 строк на 3 столбца — ячейки А1:С10 (рис. 10). В этом случае столбцы разделены с помощью константы vbTab. Новые строки вставляются с помощью константы vbCrLf. Функция MsgBox принимает в качестве параметра строку, длина которой не превышает 1023 символов. Такая длина задает ограничение на количество ячеек, которое можно отобразить в сообщении.

Sub ShowRange()

    Dim Msg As String

    Dim r As Integer, c As Integer

    Msg = «»

    For r = 1 To 10

        For c = 1 To 3

            Msg = Msg & Cells(r, c).Text

            If c <> 3 Then Msg = Msg & vbTab

            Next c

            Msg = Msg & vbCrLf

        Next r

    MsgBox Msg

End Sub

Рис. 10. Текст в этом окне сообщения содержит символы табуляции и разрыва строк

Метод Excel GetOpenFilename

Если приложению необходимо получить от пользователя имя файла, то можно воспользоваться функцией InputBox, но этот подход часто приводит к возникновению ошибок. Более надежным считается использование метода GetOpenFilename объекта Application, который позволяет удостовериться, что приложение получило корректное имя файла (а также его полный путь). Данный метод позволяет отобразить стандартное диалоговое окно Открытие документа, но при этом указанный файл не открывается. Вместо этого метод возвращает строку, которая содержит путь и имя файла, выбранные пользователем. По окончании данного процесса с именем файла можно делать все что угодно. Синтаксис (все параметры необязательные):

Application.GetOpenFilename(фильтр_файла, индекс_фильтра, заголовок, множественный_выбор)

  • Фильтр_файла. Содержит строку, определяющую критерий фильтрации файлов (необязательный параметр).
  • Индекс_фильтра. Указывает индексный номер того критерия фильтрации файлов, который используется по умолчанию (необязательный параметр).
  • Заголовок. Содержит заголовок диалогового окна (необязательный параметр). Если этот параметр не указать, то будет использован заголовок Открытие документа.
  • Множественный_выбор. Необязательный параметр. Если он имеет значение ИСТИНА, можно выбрать несколько имен файлов. Имя каждого файла заносится в массив. По умолчанию данный параметр имеет значение ЛОЖЬ.

Аргумент Фильтр_файла определяет содержимое раскрывающегося списка Тип файлов, находящегося в окне Открытие документа. Аргумент состоит из строки, определяющей отображаемое значение, а также строки действительной спецификации типа файлов, в которой находятся групповые символы. Оба элемента аргумента разделены запятыми. Если этот аргумент не указывать, то будет использовано значение, заданное по умолчанию: "Все файлы (*.*),*.*". Первая часть строки Все файлы (*.*) – то текст, отображаемый в раскрывающемся списке тип файлов. Вторая часть строки *.* указывает тип отображаемых файлов.

В следующих инструкциях переменной Filt присваивается строковое значение. Эта строка впоследствии используется в качестве аргумента фильтр_файла метода GetOpenFilename. В данном случае диалоговое окно предоставит пользователю возможность выбрать один из четырех типов файлов (кроме варианта Все файлы). Если задать значение переменной Filt, то будет использоваться оператор конкатенации строки VBA. Этот способ упрощает управление громоздкими и сложными аргументами.

Filt = «Текстовые файлы (*.txt),*.txt,» & _

   «Файлы Lotus (*.prn),*.prn,» & _

   «Файлы, разделенные запятой (*.csv),*.csv,» & _

   «Файлы ASCII (*.asc),*.asc,» & _

   «Все файлы (*.*),*.*»

В следующем примере у пользователя запрашивается имя файла. При этом в поле типа файлов используются пять фильтров (код содержится в файле prompt for file.xlsm).

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

30

31

32

33

34

Sub GetImportFileName()

    Dim Filt As String

    Dim FilterIndex As Integer

    Dim FileName As Variant

    Dim Title As String

‘   Настройка списка фильтров

    Filt = «Text Files (*.txt),*.txt,» & _

            «Lotus Files (*.prn),*.prn,» & _

            «Comma Separated Files (*.csv),*.csv,» & _

            «ASCII Files (*.asc),*.asc,» & _

            «Все файлы (*.*),*.*»

   Отображает *.* по умолчанию

    FilterIndex = 3

‘   Настройка заголовка диалогового окна

    Title = «Выберите файл для импорта»

   Получение имени файла

    FileName = Application.GetOpenFilename _

        (FileFilter:=Filt, _

         FilterIndex:=FilterIndex, _

         Title:=Title)

‘   При отмене выйти из окна

    If FileName = False Then

        MsgBox «Файл не выбран.»

        Exit Sub

    End If

   Отображение полного имени и пути

    MsgBox «Вы выбрали « & FileName

End Sub

На рис. 11 показано диалоговое окно, которое выводится на экран после выполнения этой процедуры (по умолчанию предлагается фильтр *.csv).

Рис. 11. Метод GetOpenFilename отображает диалоговое окно, в котором выбирается файл

В следующем примере пользователь может, удерживая нажатыми клавиши <Shift> и <Ctrl>, выбрать в окне несколько файлов. Обратите внимание, что событие использования кнопки Отмена определяется по наличию переменной массива FileName. Если пользователь не щелкнул на кнопке Отмена, то результирующий массив будет состоять как минимум из одного элемента. В этом примере список выбранных файлов отображается в окне сообщения.

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

30

31

32

33

34

35

36

37

38

Sub GetImportFileName2()

    Dim Filt As String

    Dim FilterIndex As Integer

    Dim FileName As Variant

    Dim Title As String

    Dim i As Integer

    Dim Msg As String

‘   Установка списка фильтров файлов

    Filt = «Text Files (*.txt),*.txt,» & _

            «Lotus Files (*.prn),*.prn,» & _

            «Comma Separated Files (*.csv),*.csv,» & _

            «ASCII Files (*.asc),*.asc,» & _

            «All Files (*.*),*.*»

   Отображает *.* по умолчанию

    FilterIndex = 5

‘   Настройка заголовка диалогового окна

    Title = «Выберите файл для импорта»

   Получение имени файла

    FileName = Application.GetOpenFilename _

        (FileFilter:=Filt, _

         FilterIndex:=FilterIndex, _

         Title:=Title, _

         MultiSelect:=True)

‘   Выход в случае отмены работы с диалоговым окном

    If Not IsArray(FileName) Then

        MsgBox «Файл не выбран.»

        Exit Sub

    End If

   Отображение полного пути и имени файлов

    For i = LBound(FileName) To UBound(FileName)

        Msg = Msg & FileName(i) & vbCrLf

    Next i

    MsgBox «Было выбрано:» & vbCrLf & Msg

End Sub

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

Метод Excel GetSaveAsFilename

Данный метод отображает диалоговое окно Сохранение документа и дает пользователю возможность выбрать (или указать) имя сохраняемого файла. В результате возвращается имя файла, но никакие действия не предпринимаются. Синтаксис (все параметры необязательные):

Application.GetSaveAsFilename(начальное_имя, фильтр_файла, индекс_фильтра, заголовок, текст_кнопки)

  • Начальное_имя. Указывает предполагаемое имя файла.
  • Фильтр_файла. Содержит критерий фильтрации отображаемых в окне файлов.
  • Индекс_фильтра. Код критерия фильтрации файлов, который используется по умолчанию.
  • Заголовок. Определяет текст заголовка диалогового окна.

Получение имени папки

Для того чтобы получить имя файла, проще всего воспользоваться описанным выше методом GetOpenFileName. Но если нужно получить лишь имя папки (без названия файла), лучше воспользоваться методом объекта Excel FileDialog. Следующая процедура отображает диалоговое окно, в котором можно выбрать папку (см. также файл get directory.xlsm). С помощью функции MsgBox отображается имя выбранной папки (или сообщение Отменено).

Sub GetAFolder()

    With Application.FileDialog(msoFileDialogFolderPicker)

        .InitialFileName = Application.DefaultFilePath & «»

        .Title = «Выберите местоположение резервной копии.«

        .Show

        If .SelectedItems.Count = 0 Then

            MsgBox «Отменено»

        Else

            MsgBox .SelectedItems(1)

        End If

    End With

End Sub

Объект FileDialog позволяет определить начальную папку путем указания значения свойства InitialFileName. В примере в качестве начальной папки применяется путь к файлам Excel, заданный по умолчанию.

Отображение диалоговых окон Excel

Создаваемый вами код VBA может вызывать на выполнение многие команды Excel, находящиеся на ленте. И если в результате выполнения команды открывается диалоговое окно, ваш код может делать выбор в диалоговом окне (даже если само диалоговое окно не отображается). Например, следующая инструкция VBA эквивалентна выбору команды Главная –> Редактирование –> Найти и выделить –> Перейти и указанию диапазона ячеек А1:СЗ с последующим щелчком на кнопке ОК. Но само диалоговое окно Переход при этом не отображается (именно это и нужно).

Application.Goto Reference:=Range("А1:СЗ")

Иногда же приходится отображать встроенные окна Excel, чтобы пользователь мог сделать свой выбор. Для этого используется коллекция Dialogs объекта Application. Учтите, что в настоящее время компания Microsoft прекратила поддержу этого свойства. В предыдущих версиях Excel пользовательские меню и панели инструментов создавались с помощью объекта CommandBar. В версиях Excel 2007 и Excel 2010 этот объект по-прежнему доступен, хотя и работает не так, как раньше. Начиная с версии Excel 2007 возможности объекта CommandBar были существенно расширены. В частности, объект CommandBar можно использовать для вызова команд ленты с помощью VBA. Многие из команд, доступ к которым открывается с помощью ленты, отображают диалоговое окно. Например, следующая инструкция отображает диалоговое окно Вывод на экран скрытого листа (рис. 12; см. также файл ribbon control names.xlsm):

Application.CommandBars.ExecuteMso("SheetUnhide")

Рис. 12. Диалоговое окно, отображаемое в результате выполнения указанного выше оператора

Метод ExecuteMso принимает лишь один аргумент, idMso, который представляет элемент управления ленты. К сожалению, сведения о многих параметрах в справочной системе отсутствуют.

В файле ribbon control names.xlsm описаны все названия параметров команд ленты Excel. Поэкспериментируйте с параметрами, перечисленными в этой рабочей книге. Многие из них вызывают команды немедленно (без промежуточных диалоговых окон). Но большинство из них генерирует ошибку при использовании в неправильном контексте. Например, Excel отображает сообщение об ошибке, если команда Functionwizard вызывается в случае выбора диаграммы.

В результате выполнения следующего оператора отображается вкладка Шрифт диалогового окна Формат ячеек:

Application.CommandBars.ExecuteMso("FormatCellsFontDialog")

На самом деле пользоваться объектами CommandBar не стоит, поскольку вряд ли они будут поддерживаться в будущих версиях Excel.

Отображение формы ввода данных

Многие пользователи применяют Excel для управления списками, информация в которых ранжирована по строкам. В Excel поддерживается простой способ работы с подобными типами данных с помощью встроенных форм ввода данных, которые могут создаваться автоматически. Подобная форма предназначена для работы как с обычным диапазоном, так и с диапазоном, оформленным в виде таблицы (с помощью команды Вставка –> Таблицы –> Таблица). Пример формы ввода данных показан на рис. 13 (см. также файл data form example.xlsm).

Рис. 13. Некоторые пользователи предпочитают применять встроенные формы ввода данных Excel для ввода сведений; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке

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

  1. Щелкните правой кнопкой мыши на панели быстрого доступа и в контекстном меню выберите параметр Настройка панели быстрого доступа.
  2. На экране появится вкладка Панель быстрого доступа диалогового окна Параметры Excel.
  3. В раскрывающемся списке Выбрать команды из выберите параметр Команды не на ленте.
  4. В появившемся списке выберите параметр Форма.
  5. Щелкните на кнопке Добавить для добавления выбранной команды на панель быстрого доступа.
  6. Щелкните на кнопке ОК для закрытия диалогового окна Параметры Excel.

После выполнения перечисленных выше действий на панели быстрого доступа появится новый значок.

Для работы с формой ввода данных следует структурировать данные таким образом, чтобы Excel распознавал их в виде таблицы. Начните с указания заголовков столбцов в первой строке диапазона вводимых данных. Выделите любую ячейку в таблице и щелкните на кнопке Форма панели быстрого доступа. Excel отображает диалоговое окно, в котором будут вводиться данные. Для перемещения между текстовыми полями в целях ввода информации используйте клавишу <Tab>. Если ячейка содержит формулу, результат вычислений отображается в виде текста (а не в формате поля ввода данных). Другими словами, невозможно изменить формулы с помощью формы ввода данных.

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

Используйте метод ShowDataForm для отображения формы ввода данных Excel. Единственное требование заключается в том, что активная ячейка должна находиться в диапазоне. Следующий код активизирует ячейку А1 (в таблице), а затем отображает форму ввода данных.

Sub DisplayDataForm()

    Range(«A1»).Select

    ActiveSheet.ShowDataForm

End Sub

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

Excel для Microsoft 365 для Mac Excel 2021 для Mac Excel 2019 для Mac Excel 2016 для Mac Еще…Меньше

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

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

  1. В меню Excel выберите элемент Параметры.

  2. В разделе Разработка выберите Представление.

  3. В разделе Показывать на ленте установите флажок Вкладка «Разработчик».

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

  1. На вкладке Разработчик выберите элемент управления, который хотите добавить.

  2. На листе щелкните место, куда нужно вставить элемент управления.

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

  4. В окне Формат объекта задайте такие свойства элемента управления, как шрифт, выравнивание и цвет.

  5. Повторите действия 1–4 для каждого добавляемого элемента управления.

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

  1. В меню Сервис наведите указатель на пункт Защита и выберите команду Защитить лист.

  2. Выберите нужные параметры защиты.

  3. Сохраните и закройте книгу.

    Совет: Чтобы продолжить редактирование после защиты формы, в меню Сервис наведите указатель на пункт Защита и выберите команду Снять защиту листа.

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

При необходимости вы можете проверить форму, прежде чем распространять ее.

  1. Защитите форму, как указано в описании шага 3.

  2. Откройте форму еще раз, заполните ее обычным способом и сохраните как копию.

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

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

Подготовительные действия

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

  1. Зажмите левую кнопку мыши и выделите все содержимое таблицы, после чего перейдите на вкладку «Вставка».Выделение таблицы для создания простой формы ввода в Microsoft Excel

  2. На ней разверните список «Таблицы» и кликните левой кнопкой мыши по варианту «Таблица».Кнопка создания таблицы для создания простой формы ввода в Microsoft Excel

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

  4. Изменять внешний вид таблицы вы можете по своему усмотрению, но сейчас я остановлюсь на классическом ее виде, поскольку функционально разницы никакой не будет.Проверка оформления таблицы для создания простой формы ввода в Microsoft Excel

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

  6. Нажмите по пункту «Другие» и из появившегося меню выберите пункт «Параметры».Открытие раздела с параметрами для создания простой формы ввода в Microsoft Excel

  7. В новом окне с настройками на панели слева выберите раздел «Панель быстрого доступа» и установите фильтр для команд «Команды не на ленте».Выбор параметра для создания простой формы ввода в Microsoft Excel

  8. Среди всех команд отыщите «Форма», выделите ее левой кнопкой мыши и нажмите «Добавить».Добавление кнопки на панель быстрого доступа для создания простой формы ввода в Microsoft Excel

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

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

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Заполнение простой формы ввода

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

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

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

  3. Введите по очереди значения для каждых ячеек из столбцов с названиями, затем нажмите Enter для подтверждения ввода.Заполнение данных для создания простой формы ввода в Microsoft Excel

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

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

In this guide, we’re going to show you how to enter data in form structure, without using VBA. Here are a few reasons why this might be a preferable option:

A spreadsheet’s tabular form is a great way to keep records and work on them. On the other hand, entering data manually in that tabular layout can be time consuming and error prone as you enter more data. Imagine that you are about to enter 1000th row on a 30-column table! A data entry form can help overcome this issue. You might be thinking that VBA and macros are the only way to do this, but thankfully, Excel has a built-in feature for this You can use Excel Forms to enter data in a form structure.

How to enter data without VBA (Forms) - Entry

Adding Form Command into the Ribbon

Although this feature has been around since the 2007 version, it is excluded in the Form command from the Ribbon of Excel until the 2019 version. If you are using Excel 2019, you can find this icon under the Data tab.

For older versions, you need to add it manually. To do this, first open the Customize Ribbon section from Excel Options. You can easily open the dialog by right-clicking on the Ribbon and selecting Customize Ribbon item.

Once the Customize Ribbon section is open follow the steps:

  1. Add a new tab & group into your Ribbon by using New Tab button
  2. Find Form command under All Commands in the left panel
  3. Add Form command into the new tab/group
  4. Click OK to save the changes

Now, you are ready to use forms!

See data in Excel Form

If you already have a data set, click on any cell on that table. If you are about to create new one, write down the column titles, select them, and create an Excel Table with headings. Whatever approach you take, click the Form button in the Ribbon.

Here, you can find detailed information about creating a table.

Excel Form dialog lists every field in a row in a vertical layout. Editable fields are listed as textboxes while formula-included ones are shown as labels. Once you submit the data, Form dialog show formula result as well.

You can navigate between records using the scrollbar or Find Prev / Find Next buttons on the dialog. If you want to use the keyboard, use the up and down arrow keys to navigate previous or next data. Alternatively Page Up and Page Down keys can be used to go 10 entries up or down.

How to enter data

If you want to enter a new data into your table, click on the New button. This action will clear all fields in the dialog. Alternatively, the form will be entered in new entry state if you try to access the next record after the last.

Fill out the fields, and use the Tab key to access the next field.

Pressing Enter or clicking the New button submits the new entry, and clears the fields one more time to allow a new entry.

Editing or removing an existing entry

You can edit any non-calculated values in the fields. Press the Enter key to apply your updates on the data.

Use the Esc key or Restore button to undo updates on the selected record.

Filter entries in Excel Form

You can filter which records are listed in an Excel Form based on criteria. Thus, you can narrow the work items and focus the ones you need.

To apply a filter, click on the Criteria button to activate the Criteria section of the dialog. This section is similar to the original Form. It has fields where you can enter criteria value.

Enter your criteria and execute one the following options to apply the filter:

  • hit the Enter key
  • click on Find Prev or Find Next

Either of these actions will take back you the Form section with selected record which matches the criteria. Continue to use Find Prev or Find Next buttons to navigate between filtered records.

Use Clear or Restore button to clear the Criteria section or return back to the previous applied criteria respectively.

Another helpful feature of the Excel Form is that you can use wildcards in criteria. For example, the following setting filters out records that Type field starts with any characters before the string “FLYING”, not only equal to “FLYING”.

Here is the Excel Form window after applied filter:

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


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» редактора макросов. Естественно, это нужно делать только в том случае, если вы назвали лист по-другому.

как в excel сделать окно для ввода данных

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

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

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

как в excel сделать окно для ввода данных

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

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

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

как в excel сделать окно для ввода данных

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

Producty.Range("Name").Copy

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

как в 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» означают названия, которые мы присвоили полям «Количество» и «Цена» в той же форме ввода.

как в excel сделать окно для ввода данных

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

как в excel сделать окно для ввода данных

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

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

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

как в excel сделать окно для ввода данных

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


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

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

как в excel сделать окно для ввода данных

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

.Range("Diapason").ClearContents

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

как в excel сделать окно для ввода данных

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

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

Здесь можно получить ответы на вопросы по Microsoft Excel 58571 479426

11 Ноя 2018 17:30:52

44519 357825

29 Янв 2017 17:28:40

Лучшие избранные темы с основного форума 14 80

28 Июн 2018 15:25:11

Если вы — счастливый обладатель Mac 😉 220 1066

11 Ноя 2018 04:30:45

Раздел для размещения платных вопросов, проектов и задач и поиска исполнителей для них. 2144 13665

11 Ноя 2018 14:53:34

Если Вы скачали или приобрели надстройку PLEX для Microsoft Excel и у Вас есть вопросы или пожелания — Вам сюда. 317 1616

9 Ноя 2018 18:27:42

823 11969

10 Ноя 2018 22:24:20

Обсуждение функционала, правил и т.д. 270 3481

30 Окт 2018 15:01:36

Сейчас на форуме (гостей: 1208, пользователей: 18, из них скрытых: 4) , , , , , , , , , , , , ,

Сегодня отмечают день рождения (29), (36), (46), (27), (35), (32)

Всего зарегистрированных пользователей: 83917

Приняло участие в обсуждении: 32180

Всего тем: 106878

Опубликовано 29 мая 2014
Рубрика: Справочник Excel | 12 комментариев

Множество разнообразных компьютерных программ, включая «самую главную программу в мире» — MS Windows,  ведут общение с пользователем при помощи выпадающих диалоговых окон. Эти окна представляют собой формы, состоящие из надписей, изображений, полей для…

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

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

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

1. Создают таблицы базы данных.

2. Создают формы для ввода данных в таблицы.

3. Создают необходимые запросы к таблицам базы данных.

4. Формируют отчеты на основании запросов для вывода на печать.

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

В этой (пятой в цикле) статье рассмотрим п.2 вышеизложенного алгоритма – вызов и использование формы для ввода данных.

Для чего нужна какая-то форма?! Бери таблицу — и пиши прямо в нее очередную строку информации! Зачем еще что-то выдумывать?

Мы так и делали при создании нашего небольшого и простого примера базы данных БД2 «Выпуск металлоконструкций участком №2», с которым работаем во всех статьях этого цикла.

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

При вводе данных в такие таблицы Excel «напрямую» при заполнении строк для перемещения по столбцам необходимо каждый раз нажимать клавишу «Tab», а для перехода к новой записи на новую строку пользоваться прокруткой и мышью или клавишами «Enter» и «

Рубрика Excel

Также статьи о работе с данными в Экселе:

  • Cортировка данных в списке Excel
  • Способы фильтрации данных в Excel
  • Расширенный фильтр в MS Excel
  • Как объединить данные в Экселе?

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

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

как в excel сделать окно для ввода данных

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

как в excel сделать окно для ввода данных

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

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

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

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

Кликните по кнопке ниже для загрузки файла с примерами выпадающих списков в Excel:

Видео-урок Как создать выпадающий список в Экселе на основе данных из перечня

Представим, что у нас есть перечень фруктов:

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

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбираем пункт “Проверка данных“.
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле “Источник” ввести диапазон названий фруктов =$A$2:$A$6 или просто поставить курсор мыши в поле ввода значений “Источник” и затем мышкой выбрать диапазон данных:

Если вы хотите создать выпадающие списки в нескольких ячейках за раз, то выберите все ячейки, в которых вы хотите их создать, а затем выполните указанные выше действия. Важно убедиться, что ссылки на ячейки являются абсолютными (например, $A$2), а не относительными (например, A2 или A$2 или $A2).

Как сделать выпадающий список в Excel используя ручной ввод данных

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

Например, представим что в выпадающем меню мы хотим отразить два слова “Да” и “Нет”. Для этого нам потребуется:

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“:
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле “Источник” ввести значение “Да; Нет”.
  • Нажимаем “ОК

как в excel сделать окно для ввода данных

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

Если вы хотите одновременно создать выпадающий список в нескольких ячейках – выделите нужные ячейки и следуйте инструкциям выше.

Как создать раскрывающийся список в Эксель с помощью функции СМЕЩ

Наряду со способами описанными выше, вы также можете использовать формулу СМЕЩ для создания выпадающих списков.

Например, у нас есть список с перечнем фруктов:

Для того чтобы сделать выпадающий список с помощью формулы СМЕЩ необходимо сделать следующее:

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“:
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле “Источник” ввести формулу: =СМЕЩ(A$2$;0;0;5)
  • Нажать “ОК

Система создаст выпадающий список с перечнем фруктов.

Как эта формула работает?

На примере выше мы использовали формулу =СМЕЩ(ссылка;смещ_по_строкам;смещ_по_столбцам;;).

Эта функция содержит в себе пять аргументов. В аргументе “ссылка” (в примере $A$2) указывается с какой ячейки начинать смещение. В аргументах “смещ_по_строкам” и “смещ_по_столбцам” (в примере указано значение “0”) – на какое количество строк/столбцов нужно смещаться для отображения данных. В аргументе “” указано значение “5”, которое обозначает высоту диапазона ячеек. Аргумент “” мы не указываем, так как в нашем примере диапазон состоит из одной колонки.

Используя эту формулу, система возвращает вам в качестве данных для выпадающего списка диапазон ячеек, начинающийся с ячейки $A$2, состоящий из 5 ячеек.

Как сделать выпадающий список в Excel с подстановкой данных (с использованием функции СМЕЩ)

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

Для создания списка потребуется:

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“;
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“;
  • В поле “Источник” ввести формулу: =СМЕЩ(A$2$;0;0;СЧЕТЕСЛИ($A$2:$A$100;””))
  • Нажать “ОК

В этой формуле, в аргументе “” мы указываем в качестве аргумента, обозначающего высоту списка с данными –  формулу СЧЕТЕСЛИ, которая рассчитывает в заданном диапазоне A2:A100 количество не пустых ячеек.

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

Как создать выпадающий список в Excel с автоматической подстановкой данных

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

  • Создаем список данных для отображения в выпадающем списке. В нашем случае это список цветов. Выделяем перечень левой кнопкой мыши:
  • На панели инструментов нажимаем пункт “Форматировать как таблицу“:
  • Из раскрывающегося меню выбираем стиль оформления таблицы:
  •  Нажав клавишу “ОК” во всплывающем окне, подтверждаем выбранный диапазон ячеек:
  • Затем, выделим диапазон данных таблицы для выпадающего списка и присвоим ему имя в левом поле над столбцом “А”:

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

  • Выбрать ячейку, в которой мы хотим создать список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“:
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле источник указываем =”название вашей таблицы”. В нашем случае мы ее назвали “Список“:
  • Готово! Выпадающий список создан, в нем отображаются все данные из указанной таблицы:
  • Для того чтобы добавить новое значение в выпадающий список – просто добавьте в следующую после таблицы с данными ячейку информацию:
  • Таблица автоматически расширит свой диапазон данных. Выпадающий список соответственно пополнится новым значением из таблицы:

Как скопировать выпадающий список в Excel

В Excel есть возможность копировать созданные выпадающие списки. Например, в ячейке А1 у нас есть выпадающий список, который мы хотим скопировать в диапазон ячеек А2:А6.

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

  • нажмите левой клавишей мыши на ячейку с выпадающим списком, которую вы хотите скопировать;
  • нажмите сочетание клавиш на клавиатуре CTRL+C;
  • выделите ячейки в диапазоне А2:А6, в которые вы хотите вставить выпадающий список;
  • нажмите сочетание клавиш на клавиатуре CTRL+V.

Так, вы скопируете выпадающий список, сохранив исходный формат списка (цвет, шрифт и.т.д). Если вы хотите скопировать/вставить выпадающий список без сохранения формата, то:

  • нажмите левой клавишей мыши на ячейку с выпадающим списком, который вы хотите скопировать;
  • нажмите сочетание клавиш на клавиатуре CTRL+C;
  • выберите ячейку, в которую вы хотите вставить выпадающий список;
  • нажмите правую кнопку мыши => вызовите выпадающее меню и нажмите “Специальная вставка“;
  • В появившемся окне в разделе “Вставить” выберите пункт “условия на значения“:
  • Нажмите “ОК

После этого, Эксель скопирует только данные выпадающего списка, не сохраняя форматирование исходной ячейки.

Как выделить все ячейки, содержащие выпадающий список в Экселе

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

  • Нажмите на вкладку “Главная” на Панели инструментов;
  • Нажмите “Найти и выделить” и выберите пункт “Выделить группу ячеек“:
  • В диалоговом окне выберите пункт “Проверка данных“. В этом поле есть возможность выбрать пункты “Всех” и “Этих же“. “Всех” позволит выделить все выпадающие списки на листе. Пункт “этих же” покажет выпадающие списки схожие по содержанию данных в выпадающем меню. В нашем случае мы выбираем “всех“:
  • Нажмите “ОК

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

Как сделать зависимые выпадающие списки в Excel

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

Предположим, что у нас есть списки городов двух стран Россия и США:

Для создания зависимого выпадающего списка нам потребуется:

  • Создать два именованных диапазона для ячеек “A2:A5” с именем “Россия” и для ячеек “B2:B5” с названием “США”. Для этого нам нужно выделить весь диапазон данных для выпадающих списков:
  • Перейти на вкладку “Формулы” => кликнуть в разделе “Определенные имена” на пункт “Создать из выделенного“:
  • Во всплывающем окне “Создание имен из выделенного диапазона” поставьте галочку в пункт “в строке выше“. Сделав это, Excel создаст два именованных диапазона “Россия” и “США” со списками городов:
  • Нажмите “ОК
  • В ячейке “D2” создайте выпадающий список для выбора стран “Россия” или “США”. Так, мы создадим первый выпадающий список, в котором пользователь сможет выбрать одну из двух стран.

Теперь, для создания зависимого выпадающего списка:

  • Выделите ячейку E2 (или любую другую ячейку, в которой вы хотите сделать зависимый выпадающий список);
  • Кликните по вкладке “Данные” => “Проверка данных”;
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выберите “Список“:
  • В разделе “Источник” укажите ссылку: =INDIRECT($D$2) или =ДВССЫЛ($D$2);
  • Нажмите “ОК

Теперь, если вы выберите в первом выпадающем списке страну “Россия”, то во втором выпадающем списке появятся только те города, которые относятся к этой стране. Также и в случае, когда выбираете “США” из первого выпадающего списка.

Формы ввода данных в Microsoft Excel

Форма в Microsoft Excel

​Смотрите также​ в разных книгах.​ (а если позиций​ все обрезано.​Суть такая, я​ запуска макроса не​ и листов excel?​(Form) на Панели​Нажимайте клавишу TAB для​ то выбираем из​ соответствующих колонкам​ модифицировать. Чтобы вы​ того листа, где​ пункт в выпадающем​ действия значки фильтрации​ заполнения табличной области.​ с каким именно​Для облегчения ввода данных​В какую сторону​ накопится 1000? Это​

​постараюсь попозже выложить​ хочу нажимать на​

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

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

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

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

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

  1. ​ таблицы, как это​ прямо на листе,​ будет работать, следует​ Excel можно воспользоваться​Заранее огромное спасибо.​wild_pig​​eritik​​ появлялась форма, далее​Валера​​ чтобы данные копировались​​Назад​

    Переход в параметры в Microsoft Excel

  2. ​Закончив ввод данных в​ создавали. У нас​«Количество»​​ из чего данный​​ это​ тут же отобразилась​ и требовалось.​ и представлять собой​ ввести любое значение​ специальными формами, которые​wild_pig​: И все 1000​: Фото в вложение​

    ​ я начинаю вводить​​: Огромное спасибо! Я​​ в строго определенный​​(Find Prev) и​​ строку, нажмите клавишу​ он называется​,​ код состоит, что​​«Лист 1»​​ в поле​Затем нам следует создать​​ её диапазон. С​​ в первую строку​

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

  3. ​ помогут ускорить процесс​: Может мы вражины,​ будут разные. Что​eritik​​ информацию, она должна​​ уж учебники перечитал,​

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

  4. ​ лист, а не​Далее​ RETURN , чтобы​«DataEntryForm»​«Цена»​ в нем следует​.​«Наименование товара»​ саму форму ввода​

    Инструмент форма отображается на панеле быстрого доступа в Microsoft Excel

  5. ​ помощью данного инструмента​ табличного массива.​ заполнения табличного диапазона​ но маскируемся?​ с датой делать.​: пример во вложении​ искаться в столбце​ поисковики изнасиловал. А​ в тот в​(Find Next), чтобы​ добавить строку в​​. Но в данном​​и​​ заменить, а что​​После этого переходим к​​.​​ данных. Она тоже​​ пользователь сам сможет​​После этого выделяем любую​ информацией. В Экселе​Цитата​

    Шапка таблицы в Microsoft Excel

  6. ​Hugo​eritik​ (только уникальные само​ здесь, оказывается, какие​ котором форма активна​ легко переключаться от​ конец списка.​

    первое значение в таблице в Microsoft Excel

  7. ​ случае макрос один,​«Сумма»​ менять не нужно.​ левой нижней области​Далее нам нужно будет​​ будет представлять собой​​ реализовать те возможности,​ ячейку заготовки таблицы​

    Запуск формы в Microsoft Excel

  8. ​ имеется встроенный инструмент​200?’200px’:»+(this.scrollHeight+5)+’px’);»>В какую сторону копать​:​: + файл​ собой), и если​ отзывчивые люди обитают!​ в данный момент.​ одной записи (строки)​По завершении добавления строк​ поэтому просто выбираем​. Поэтому, если в​

    Форма открыта в Microsoft Excel

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

    Ввод значений в форму в Microsoft Excel

  10. ​ Копайте в сторону​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub GoEnd()​yutrans​ я выбираю этот​ Респект​Pavel55​ к другой.​ нажмите кнопку​ его и жмем​

    Значения перенесы в таблицу в Microsoft Excel

  11. ​ вашем случае таблица​Sub DataEntryForm()​«Properties»​ трем ячейкам формы​ массив, состоящий из​ По функционалу он​​ панели быстрого доступа​​ подобным методом. Также​

    Добавление второй строки в таблицу через форму в Microsoft Excel

  12. ​ создания своих тем,​Cells(Range(«a» & Rows.Count).End(xlUp).Row​: Спасибо. Буду изучать​ вариант, то автоматически​Serge_ASB​: Посмотрите пример.​

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

  13. ​Примечание:​Закрыть​ на кнопку​ сдвинута, то нужно​

    Все значения в таблицу введены в Microsoft Excel

  14. ​«DataEntryForm»​. Тут расположены настройки​ ввода, куда мы​ двух столбцов. Наименования​ практически ни в​​ по значку​​ пользователь может создать​​ и пользования поиском​​ + 1, 1).Select​Paul_GD​

    Навигация по форме в Microsoft Excel

  15. ​ подставляются значение из​: Понравилась форма.​P.S. У меня​Используйте кнопки​, чтобы добавить последнюю​«OK»​ указать соответствующие номера​— это название​ выделенного листа. В​​ будем вводить данные.​​ строк данного объекта​

    Корректировка данных в форме в Microsoft Excel

  16. ​ чем не будет​«Форма…»​ собственный вариант формы,​

    Изменение произведено в таблице в Microsoft Excel

  17. ​ (жесточайше).​End Sub​: Добрый день!​ соседних столбцов, но​У меня идея​ такое чувство, что​Добавить​ новую строку и​внизу окна.​​ столбцов. Если столбцов​​ самого макроса. Вы​

    Удаление строки через форму в Microsoft Excel

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

    Подтверждение удаления строки в Microsoft Excel

  19. ​ только если количество​ наподобие. В таблице​ вы удаляете записи​(New) или​ закрыть форму данных.​После этого можно переименовать​ больше, то по​ можете оставить его​​«(Name)»​​ где уже установлено​

    Закрытие формы в Microsoft Excel

  20. ​ столбцов основной таблицы.​ Excel, а кое​ активировали.​ адаптирована под его​

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

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

​:​ макроса закрепить в​ ввода данных! большой​ данного товара один,​ я ее в​ из таблицы каким-то​Удалить​ Для последней строки​ кнопку, как вы​ аналогии нужно добавить​ как есть, а​следует заменить кириллическое​ в нашем случае​ Исключение составляют столбцы​ в чем, возможно,​Итак, открывается окно указанного​ потребности, применив для​foxmeyson​ верхней закреплённой части​ потенциал!​ если не один,​ целом воплотил. Только​ странным способом. Например,​(Delete), чтобы добавлять​ не требуется нажимать​ захотите, просто выделив​ её строки в​ можете заменить на​ наименование (​ наименование​«№ п/п»​

  1. ​ превосходить его. Единственный​ инструмента. Как видим,​ этого макрос. Давайте​, я бы использовал​ листа.​при использовании возник​ то общую сумму​​ вот созданием форм​​ нажав пробел на​​ или удалять записи.​​ клавишу RETURN .​​ её текущее название.​​ код, если меньше​​ любое другое, которое​​«Лист1»​​«Картофель»​​и​

    Шапка таблицы создана в Microsoft Excel

  2. ​ недостаток состоит в​ данный объект имеет​ рассмотрим различные варианты​ access. Его можно​wild_pig​ такой вопрос к​ поделить на количество​ никогда в Excel​ ячейке, если это​ Начав редактировать данные,​​Примечания:​​В нашем случае, например,​​ – то убрать​​ соответствует общим правилам​​) на название, написанное​​. Далее переходим в​«Сумма»​ том, что для​ поля, которые соответствуют​ использования этих полезных​ настроить через разного​: Вариант с формой​ форме по кнопке​ и присвоить это​

    Создание умной таблицы в Microsoft Excel

  3. ​ не занимался. Посему​ так, то таким​ вы можете воспользоваться​ ​ логично будет дать​ лишние.​ создания наименований макросов​ на латинице. Название​ поле наименования диапазонов.​. Они будут отсутствовать.​ каждого табличного массива​​ названиям столбцов нашего​​ инструментов заполнения в​ рода DNS. И​​Bachata​​ Воронка новых клиентов​

    Окошко форматирования таблицы в Microsoft Excel

  4. ​ в цену.​ интересуюсь.​ образом удалять информацию​ кнопкой​В Excel строка автоматически​ ей имя​В строке производится умножение​ (отсутствие пробелов, использование​ можно дать любое,​ Оно расположено в​ Нумерация первого из​ придется составлять отдельную​ табличного массива. При​​ Excel.​​ пользовать одну базу​: Спасибо большое, то​​если имеется два​​Одно из полей​​Расскажите (или скажите​​ нельзя! Информация из​

    Отключение фильтра через вкладку Данные в Microsoft Excel

    ​Вернуть​ добавляется при переходе​«Добавить»​ количества товара на​ только букв латинского​ которое вам будет​​ левой части окна​​ них будет происходить​ форму, а не​ этом первое поле​Скачать последнюю версию​​ со многомногими подключениями.​​ что нужно!​​ одинаковых названия для​​ это должна быть​ где взять) инфо​​ ячеек надо удалять​​(Restore), чтобы отменить​

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

  5. ​ к другой записи​. Переименовываем и кликаем​ его цену:​ алфавита и т.д.).​ удобнее, главное, чтобы​

    Фильтр снят в Microsoft Excel

  6. ​ Excel на том​ при помощи макроса,​ применять один и​ уже заполнено значением,​ Excel​А можно установить​Скажите, а можно​ осуществления поиска в​ дата (календарь для​ по поводу -​ так:​​ любые изменения.​​ или закрытии формы​​ мышкой по любой​​.Cells(nextRow, 5).Value = Producty.Range(«Volum»).Value​ Изменение наименования ни​ в нем были​ же уровне, что​ а расчет значений​ тот же шаблон,​ так как мы​Форма заполнения представляет собой​ бд помощнее, например​

    ​ добавить в форму​ окне Результаты отображаются​ выбора).​ как рисовать саму​1) Выделяете мышкой​Нажмите кнопку​ данных.​

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

  7. ​ свободной ячейке листа.​ * Producty.Range(«Price»).Value​ на что не​ исключительно символы латиницы​ и строка формул.​ во втором будет​ как это возможно​ его ввели вручную​ объект с полями,​ SQL server и​ поле для даты?​ оба. но при​​И еще в​​ форму и как​

    Таблица со списком товаров в Microsoft Excel

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

    Переход к проверке данных в Microsoft Excel

  9. ​ написать приложение работающие​ Т.е. чтобы ее​ выборе в окне​​ поле количество значение​​ прикручивать на элементы​ листе​​(Criteria), чтобы отобразить​​ формулу, отображается ее​

    Окно проверки вводимых значений в Microsoft Excel

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

    Выбор списка в окне проверки вводимых значений в Microsoft Excel

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

    Переход к выбору источника в окне проверки вводимых значений в Microsoft Excel

  12. ​ управления «источник информации»​2) Нажимаете кнопку​ только те записи,​ результат. Изменить формулу​ она работает. Вводим​ выводиться в пятый​ коде слово​ или пробелы. Именно​​ быть любое наименование​​ на цену.​Как и в предыдущем​ нужными и в​ заполняемой таблицы. В​Stormy​

    Адрес диапазона внесен в поле в Microsoft Excel

  13. ​ вручную?​ остальные поля (которые​В общем объяснила​ и ячейку-получатель.​ Delete на клавиатуре​ которые удовлетворяют определенным​​ в форме данных​​ в её поля​​ столбец листа Excel.​​«Producty»​

    Закрытие окна проверки вводимых значений в Microsoft Excel

  14. ​ с этим именем​ на латинице, в​Второй столбец объекта ввода​ способе, прежде всего,​ остальные поля, после​ эти поля нужно​: Книги разные -​Не знаю, реализуемо​ содержат отличную от​ как смогла, лучше​​Буду рад комментариям.​​ (либо меню Правка​ критериям.​ невозможно.​ необходимые значения и​В этом выражении выполняется​вы должны его​ будет работать макрос.​ котором нет пробелов,​

    Список со значениями в Microsoft Excel

  15. ​ данных оставим пока​ нужно составить шапку​ чего жмем на​​ вводить данные и​​ но всегда одни​

    Выбранная позиция отобразилась в ячейке в Microsoft Excel

  16. ​ ли это ,​ первого варианта информацию)​ посмотрите на таблицу​Юрий М​ — Очистить)​Введите критерии и кликните​Изменение данных в строке​ жмем на кнопку​ автоматическая нумерация строк:​​ заменить на то​​ Пусть в нашем​ но лучше все-таки​ что пустым. Непосредственно​ будущей таблицы на​ кнопку​ они тут же​ и те же​ но было бы​ не меняются, т.е.​ и сразу все​: Список доступной для​Petr​ по кнопке​Щелкните любую ячейку в​«Добавить»​If nextRow >​ наименование, которое ранее​ случае данным названием​ использовать названия близкие​​ в него позже​​ листе. Она будет​«Добавить»​ будут добавляться новой​​ или меняются по​​ удобно, если бы​

    Наименование первой ячейки в Microsoft Excel

  17. ​ отображаются поля, содержащиеся​ поймете.​ скачивания литературы и​: возможно это произошло​​Правка​​ диапазоне или таблице​

    Наименование второй ячейки в Microsoft Excel

  18. ​.​ 2 Then​​ присвоили для своего​​ будет​

    Наименование третьей ячейки в Microsoft Excel

  19. ​ к решаемым данным​ будут вводиться значения​ состоять из пяти​.​ строкой в табличный​ прихоти пользователя? Если​ в поле даты​ в строке по​__новая таблица учета.xlsx​ ссылки на ресурсы​​ случайно. обычно я​​(Form).​

    присвоение наименования диапазону в Microsoft Excel

  20. ​ с данными, которые​Как видим, значения перемещены​Range(«A2»).Select​ листа в поле​«Producty»​ элементом задачам. Поэтому​ для заполнения строк​ ячеек с именами:​​После этого, как видим,​​ диапазон. Форма может​ одинаковые , то​​ (которое по-прежнему остается​​ первому вхождению.​

    Сохранение книги в Microsoft Excel

  21. ​Большое СПАСИБО!​ можно найти в​​ удаляю информацию из​​Теперь, нажимая​​ требуется изменить.​ в таблицу, строке​​Selection.AutoFill Destination:=Range(«A2:A» &​«(Name)»​​, хотя вы можете​​ первую ячейку, в​

    Окно сохранения файла в Microsoft Excel

  22. ​ основного табличного диапазона.​«№ п/п»​ в первую строку​ выступать как в​​ можно сделать форму​​ редактируемым) по дефолту​возможно ли сделать​eritik​ «Копилке». Загляните в​ ячеек как Вы​Назад​В меню​ автоматически присвоен номер,​ nextRow)​области​
  23. ​ выбрать и любое​ которой содержится название​После этого создаем ещё​​,​​ таблицы были автоматически​ виде отдельного встроенного​​ ввода, а базу​​ стояло значение (т.е.​ так, что бы​:​​ Правила — там​​ и написали.​

    Переход в редактор макросов в Microsoft Excel

  24. ​(Find Prev) и​Данные​ сумма посчитана, поля​Range(«A2:A» & nextRow).Select​​«Properties»​​ другое, соответствующее условиям,​ товара, назовем​ одну небольшую таблицу.​«Наименование товара»​ перенесены введенные значения,​ инструмента Excel, так​ на Excel. Делаем​​ дата) предыдущей ячейки.​​ и поля отображались​

    Редактор макросов в Microsoft Excel

  25. ​_Adelaida_​ всё есть.​и еще один,​​Далее​​выберите команду​ формы очищены.​End If​​редактора макросов. Естественно,​​ которые были описаны​«Name»​​ Она будет состоять​​,​ а в форме​ и располагаться непосредственно​ подключение через стандартный​ Например, в день​ соответсвенно от выбранного​, никто полностью всю​denisbuslov​ надеюсь последний в​(Find Next), вы​Форма​Повторно заполняем форму и​Все значения​ это нужно делать​ выше.​​. Пишем данное наименование​​ из одного столбца​«Количество»​ произошел переход к​ на листе в​ импорт данных MS​

    ​ нужно ввести 10-20​​ варианта?​​ работу за вас​: Нужно создать форму​ этом топике, вопрос:)​ будете видеть только​.​ жмем на кнопку​«A2»​ только в том​В поле​ в поле и​ и в ней​,​ следующему блоку полей,​ виде его диапазона,​

    ​ Query. Ну или​ наименований блюд. Ты​спасибо заранее!​​ делать не будет.​​ с помощью которой​​помогите добавить третью​​ данные, удовлетворяющие этим​Нажмите кнопку​«Добавить»​

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

  26. ​означают адрес первой​ случае, если вы​«Name»​ жмем на клавишу​ разместится список товаров,​«Цена»​ который соответствуют второй​ если она создана​ что-то посложнее, но​ вместе с первым​yutrans​ это целый проект.​​ данные вносились бы​​ кнопочку к «да​

    Поле в редкторе макросов отобразилось в Microsoft Excel

  27. ​ критериям. В нашем​Создать​.​ ячейки, где будет​


    ​ назвали лист по-другому.​
    ​тоже можно заменить​Enter​
    ​ которые мы будем​,​
    ​ строке табличного массива.​
    ​ самим пользователем.​ уже на Аccess​ продуктом вводишь сегодняшнюю​
    ​: Удалите дубликаты строк.​если есть конкретные​
    ​ в бланк в​
    ​ - заменить" и​
    ​ примере – это​
    ​.​Как видим, и вторая​
    ​ производиться нумерация, а​Теперь рассмотрим такую строку:​
    ​ название на более​на клавиатуре.​
    ​ выводить во вторую​«Сумма»​
    ​Заполняем окно инструмента теми​Теперь давайте рассмотрим, как​
    ​ или так как​
    ​ дату, а дальше,​ (создайте базу данных​
    ​ вопросы: по организации​
    ​ строго указанные ячейки.​
    ​ "нет - добавить"​
    ​ запись 13.​
    ​В форме данных найдите​

    ​ строка также добавлена​ координаты «​nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1,​ удобное. Но это​Точно таким же образом​ колонку основной таблицы.​.​ значениями, которые хотим​ пользоваться этими двумя​ Матраскин предложил.​ при нажатии на​ без дубликатов)​ поиска, вывода/вывода данных​ Ячейки выделены красным​ еще одну «отмена»​Примечание:​ строку, которую требуется​

    ​ в табличный массив.​

    ​A»​

    ​ 0).Row​​ не обязательно. При​ присваиваем ячейке, в​ Для наглядности ячейку​Далее нужно из нашего​ видеть во второй​ видами инструментов.​Ирина​ кнопку «добавить» эта​Paul_GD​ — то задавайте.​ шрифтом. Заранее спасибо!​спасибо Вам за​Для редактирования критериев​ изменить, с помощью​

    ​ Это означает, что​— адрес всего​​Цифра​​ этом допускается использование​ которую будем вводить​ с заголовком данного​ табличного массива сделать​ строке табличной области,​​Прежде всего, давайте узнаем,​​: Здравствуйте, подскажите пожалуйста:​​ дата уже как​​: по факту они​если нужен весь​denisbuslov​ помощь!​ нажмите кнопку​

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

    ​ кнопок​

    ​ инструмент работает.​ столбца с нумерацией.​

    ​«2»​​ пробелов, кириллицы и​​ количество товара, имя​ перечня (​ так называемую «умную»​ и снова щелкаем​ как применять встроенную​​ можно ли в​​ бы автозаполнена.​ не являются дубликатами,​ проект целиком пишите​: Извините вот и​Pavel55​Критерии​Назад​Читайте также:​ Проверьте, где именно​​в данной строчке​​ любых других знаков.​«Volum»​

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

    ​«Список товаров»​

    ​ таблицу, с возможностью​ по кнопке​ форму для ввода​

    ​ excel 2010 создать​​wild_pig​ поскольку в след​ на почту del​ файл.​​: Посмотрите пример​​(Criteria) еще раз.​и​Как создать макрос​ будет выводиться нумерация​​ означает второй столбец​​ В отличие от​.​) можно залить цветом.​ автоматического добавления строчек​

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

    ​«Добавить»​

    ​ данных Excel.​

    ​ форму для ввода​​:​​ столбцах будут иные​ обсудим​​denisbuslov​​Petr​

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

    ​ Чтобы закрыть форму,​


    ​Найти далее​
    ​ в Excel​ в вашей таблице​
    ​ листа. Именно в​ предыдущего параметра, который​
    ​А ячейке с ценой​Затем выделяем первую пустую​

    ​ при заполнении соседних​​.​​Нужно отметить, что по​​ данных в форматированную​​Цитата​ данные.​​yutrans​​: Кто согласиться помочь​​: Pavel55, еще раз​​ кликните по​или полосы прокрутки.​

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

    ​Как создать кнопку​ и измените данные​ этом столбце находится​​ задает наименование листа​​ –​​ ячейку объекта ввода​​ диапазонов или ячеек​​Как видим, значения второй​​ умолчанию значок, который​​ таблицу. Заранее спасибо​​Bachata, 31.01.2014 в​Например,​: http://moonexcel.com.ua/%D1%83%D1%80…8B-userform_ru​​ по цене сойдемся!​​ спасибо!​​Закрыть​​Измените данные в строке.​​ в Excel​​ координаты в коде,​​ колонка​​ для программы, данный​«Price»​ значений. Переходим во​ данными. Для этого​ строчки тоже были​ её запускает, скрыт​ за ответ.​ 06:50, в сообщении​ООО рога и​eritik​Anton20002​

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

    ​Kegrus​(Close).​Совет:​

    ​В Экселе существует два​ если это необходимо.​

    ​«Наименование товара»​ параметр присваивает название​.​ вкладку​

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

    ​ выделяем шапку и,​ добавлены, причем нам​


    ​ и его нужно​Z​
    ​ № 8200?'200px':''+(this.scrollHeight+5)+'px');">Скажите, а​
    ​ копыта / договор​:​
    ​: denisbuslov,​
    ​: Как сделать в​

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

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

    ​приветствую готов помочь.​ форме ввода данных​ командой сайта office-guru.ru​ полю формы, нажмите​ заполнения данными: встроенная​ диапазона формы ввода​

    ​ будем считать количество​

    ​ на панели ярлыков.​ же образом даем​​. Щелкаем по значку​​«Главная»​ переставлять курсор в​ переходим во вкладку​ и нажать знак​ форму поле для​ стоимость.руб.​, вот тогда еще​ моя почта​ раскрывающийся список:​

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

    ​Источник: http://www.excel-easy.com/examples/data-form.html​ клавишу TAB ,​ и пользовательская. Применение​ данных после того,​

    ​ рядов. Поэтому, если​Как видим, после этого​ название всему диапазону​«Проверка данных»​, жмем на кнопку​ самой таблице.​«Файл»​ «Форма». Если его​ даты?​ООО рога и​ небольшая помощь.​Удалено. Нарушение п.4 Правил​

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

  28. ​Примеру: 20 объектов​Перевел: Антон Андронов​ к предыдущему полю​ встроенного варианта требует​ как информация из​ в вашем случае​ автоматически изменится и​​ из вышеуказанных трех​​, который размещен на​​«Форматировать как таблицу»​​Таким образом, заполняем табличный​, а затем щелкаем​​ еще нет, то​​А как узнать,​ копыта / договор​​поиск и вывод​​ ветки РАБОТА/ФРИЛАНС​ с собственными названиями​​Автор: Антон Андронов​​ — сочетание клавиш​

    Выбор элемента управления в Microsoft Excel

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

    Указание границ кнопки в Microsoft Excel

  30. ​ по пункту​ вынести на ПБД​ что уже следующий​ 2 (услуги) /​ всех найденных значений​присылайте свою цену.​ и номерами(чтобы постоянно​Petr​ SHIFT + TAB​ пользователя. Его всегда​ в таблицу:​ другой порядок по​​Листа 1​​ выделим, а потом​ инструментов​«Стили»​ которые хотим в​«Параметры»​​ (панель быстрого доступа)…​​ день? А, если​
  31. ​ стоимость.руб.​ в listbox​RAN​ не писать навание​

    Переименовывание кнопки в Microsoft Excel

    ​: здравствуйте!​ .​ можно запустить, добавив​​.Range(«Diapason»).ClearContents​​ счету, то нужно​в области​ дадим ему наименование​

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

  32. ​«Работа с данными»​. После этого открывается​ неё ввести.​.​Ирина​ вы в «следующий»​​нужно изменить/дополнить по​​Private Sub TextBox1_Change()​

    Ввод данных в форму в Microsoft Excel

  33. ​: Ниписал в ЛС.​ объектов в полях,​а возможно ли​Закончив изменение данных, нажмите​ соответствующий значок на​

    Значения первой строки внесены в таблицу в Microsoft Excel

  34. ​Не трудно догадаться, что​ ввести соответствующее число.​​«Project»​​ в специальном поле.​

    Повторный ввод данных в форму в Microsoft Excel

  35. ​.​ список доступных вариантов​Кроме того, при желании,​В открывшемся окне параметров​: Здравствуйте. Спасибо. Я​

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

​ день захотите подправить​
​ Договору 2, а​ If Len(TextBox1) >​
​китин​ а выбирать из​

​ в excel сделать​ клавишу RETURN ,​ панель быстрого доступа.​ (​ Значение​, на то, которое​ Пусть это будет​Запускается окно проверки вводимых​ стилей. На функционал​ можно производить навигацию​ Эксель перемещаемся в​ знаю это действие.​ (забыли заполнить) предыдущий?​ форма зацикливает на​ 2 Then ListBox1.Clear​:​ списка).​ форму для ввода​ чтобы обновить строку.​

​ Пользовательскую форму нужно​

lumpics.ru

Упрощение ввода данных с помощью формы данных

​«Diapason»​«End(xlUp).Offset(1, 0).Row»​ мы только что​ имя​ данных. Кликаем по​ выбор одного из​ по ранее введенным​ раздел​ Но если данных​Bachata​ Договор 1, хотя​ itext$ = TextBox1.Value​Anton20002​P/S И как​ данных как в​

​В Excel будет автоматически​ создавать самому, но​) означает наименование того​в любом случае​ задали в настройках.​«Diapason»​ полю​ них никак не​

Форма данных

Выноска 1​ значениям с помощью​«Панель быстрого доступа»​

Выноска 2​ много и таблица​: Ну, например, предыдущий​ в окне Результаты​ If itext$ <>​

​: Удалено администрацией​​ добавить новый объект​ access?​ выбрана следующая строка.​

​ если вы хорошо​ диапазона, который мы​

​ оставляем без изменений.​Затем переходим в центральную​

  1. ​.​«Тип данных»​ повлияет, поэтому выбираем​ кнопок​

  2. ​. Большую часть окна​​ огромная, то тогда​​ день закончился так:​​ поиска видно оба​​ «» Then With​

  3. ​Anton20002​​ в список формы​​ну чтобы появлялось​

  4. ​Совет:​ разбираетесь в коде​

    ​ ранее присвоили полям​Далее рассмотрим строку​ область окна. Именно​

  5. ​После последнего действия обязательно​, в котором по​ просто тот вариант,​«Назад»​ занимает обширная область​

  6. ​ как быть? А​31.01.2014 такос 200​​ варианта​​ ThisWorkbook.Worksheets(«base»).[a:a] Dim icell​: Чего это мою​ данных​ окошко с определенными​ Перед нажатием клавиши RETURN​ VBA, то сможете​

    ​ для ввода данных.​​If .Range(«A2»).Value = «»​

    • ​ тут нам нужно​ сохраняем документ, чтобы​ умолчанию установлен параметр​ который считаем более​и​

    • ​ настроек. В левой​ работники мои плохо​ 226​yutrans​ As Range Set​

​ ссылку на видео​

  1. ​Петр​ полями для заполнения​ можно отменить все​ сделать этот инструмент​

  2. ​ Если вы дали​​ And .Range(«B2»).Value =​​ будет записать сам​​ названия, которые мы​​«Любое значение»​

  3. ​ подходящим.​​«Далее»​​ её части находятся​

  4. ​ соображают по части​На следующий день,​: А если выбор​ icell = .Find(itext$,​​ заблокировали?​​: Подскажите, а где​​ и затем данные​​ изменения, нажав кнопку​

  5. ​ максимально гибким и​

    ​ им другое наименование,​​ «» Then​ код макроса. Если​ присвоили, смог воспринимать​.​Затем открывается небольшое окошко​или вертикальной полосы​ инструменты, которые могут​

  6. ​ офиса 2010, они​ 1 февраля, я​ осуществлять через комбобокс?​

    ​ , xlValues, xlPart)​Pelena​

    ​ указывается в настройках​​ помещались в лист.​Восстановить​ подходящим под ваши​​ то в этой​​«A2»​

​ поле редактора кода​

  1. ​ макрос, созданный нами​Из раскрывшихся вариантов выбираем​ форматирования таблицы. В​ прокрутки.​

  2. ​ быть добавлены на​​ могут работать лишь​​ нажимаю на кнопочку​​Bachata​​ If Not icell​

  3. ​:​​ полей, в какую​​если можно покажите​

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

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

    ​ «добавить», и все​​: Всем доброго времени​ Is Nothing Then​Anton20002​ ячейку заносить данные?​ пример пожалуйста​

    ​Удаление строки​Автор: Максим Тютюшев​

См. также

​ вставлено именно оно.​ первой ячейки, в​

​ указанной области не​ сохранения переходим во​

support.office.com

Форма данных в Excel

​«Список»​ который мы ранее​ любое значение в​ а в правой​ и формулами. Хотелось​ поля формы, кроме​ суток!​ iaddress$ = icell.Address​, Вам ещё рано​Ан13​Pavel55​Щелкните любую ячейку в​Форма данных представляет собой​

  1. ​Дальнейшая часть кода универсальна​
  2. ​ которой будет выводиться​​ отображается, как в​​ вкладку​.​Форма данных в Excel
  3. ​ выделили, то есть,​​ табличном массиве, изменив​​ – уже присутствующие.​​ облечить им работу​​ поля «дата» (в​Некоторое время назад​ ListBox1.Clear Do Set​ в этой ветке​Форма данных в Excel

​: Kegrus​​: Смотрите пример​​ диапазоне или таблице,​​ удобный способ ввода​​ и во всех​​ нумерация строк.​ нашем случае, то​«Файл»​Как видим, после этого​ диапазон шапки. Как​​ его в форме.​​В поле​ не разносить все​

  1. ​ нем уже стоит​​ у меня появилась​​ icell = .FindNext(icell)​ постить. Прочитайте Правила​(Как сделать в​Guest​
  2. ​ из которых нужно​ или просмотра одной​​ случаях будет вноситься​​«B2»​Форма данных в Excel
  3. ​ жмем на функциональную​​и кликаем по​​ окно проверки вводимых​​ правило, в данном​​ Чтобы изменения отобразились​«Выбрать команды из»​ в ручную, а​ дата предыдущего дня​ цель — начать​ ListBox1.AddItem icell.Value Loop​Форма данных в Excel

​Anton20002​​ форме ввода данных​: Павел, что-то не​​ удалить строку.​​ строки данных в​ без изменений.​— это координаты​​ клавишу​​ пункту​

​ значений несколько изменило​ поле заполнено все​
​ на листе, после​
​устанавливаем значение​

​ с помощью формы​

office-guru.ru

форма ввода данных

​ — 31.01.2014), пустые.​​ вести учет потребляемой​
​ While iaddress$ <>​: Интересно…Целый день программу​ раскрывающийся список:​ срабатывает форма -​В меню​
​ диапазон или таблице.​После того, как вы​ первой ячейки, по​F7​«Сохранить как…»​
​ свою конфигурацию. Появилось​ верно. Но нам​

​ внесения их в​​«Команды не на ленте»​

​ данные заносить по​​ Я вручную изменяю​ пищи для того,​ icell.Address End If​

​ писал, а ее​​Примеру: 20 объектов​

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

​ чтобы контролировать свой​​ End With Else​
​ даже показать нельзя​ с собственными названиями​Pavel55​выберите команду​

​ отображаются все столбцы,​
​ в окно редактора,​ вывод данных (​
​Теперь для конкретно нашего​
​В открывшемся окне сохранения​«Источник»​ около параметра​ жмем на кнопку​
​ команд, расположенного в​
​vikttur​
​ даты с 31.01.2014​

​ вес​​ TextBox1.SetFocus End If​

​Pelena​​ и номерами(чтобы постоянно​

​: какую?​​Форма​
​ и поэтому одновременно​ следует нажать на​
​«Наименование товара»​ примера нужно записать​ в поле​. Щелкаем по пиктограмме​«Таблица с заголовками»​«Добавить»​
​ алфавитном порядке, находим​: Тогда, если нет​ на 01.02.2014, заполняю​Для этого был​ End If End​: Это раздел платных​ не писать навание​Petr​

​.​​ можно просмотреть все​

​ значок сохранения в​). Если они у​ в поле следующий​«Тип файлов»​ справа от него​. После этого жмем​.​ и выделяем позицию​ навыков работы с​ остальные поля и​ создан экселевский файлик,​ Sub, заполнение формы​

​ заказов. Здесь решения​ объектов в полях,​: Уважаемый Pavel55!​
​Нажмите кнопку​ данные в строке.​ виде дискеты в​ вас отличаются, то​

​ код:​​выбираем значение​ левой клавишей мыши.​ на кнопку​Как видим, изменение сразу​«Форма…»​
​ формами в VBA​ делаю запись. И​ в котором продукты​
​ по найденному значению​ вообще не выкладываются.​ а выбирать из​немного изменил Ваш​Создать​
​ Это особенно полезно,​ левой части окна.​

​ введите вместо этих​​Sub DataEntryForm()​

​«Книга Excel с поддержкой​​Затем окно проверки вводимых​«OK»​

​ произошло и в​​. Затем жмем на​ — только заказывать​ во всех последующих​
​ записываются в формате:​private sub CommandButton1_Click​Уточните: Вы выполняли​ списка).​ пример под себя.​.​ если в диапазоне​

​ Затем можно его​ координат свои данные.​Dim nextRow As​ макросов (.xlsm)»​

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

​ записях текущего дня​​Дата​
​ () Application.ScreenUpdating =​ заказ​P/S И как​
​подскажите как сделать​В форме данных найдите​ или таблице больше​ закрывать, щелкнув по​Переходим к строке​ Long​. Далее жмем на​

​ курсором с зажатой​Итак, наш диапазон отформатирован,​Если нам нужно удалить,​«Добавить»​
​ разделе. Вряд ли​

​ вручную прописывать дату​​|​ False On Error​denisbuslov​ добавить новый объект​ чтоб если данные​ строку, которую требуется​
​ столбцов данных, чем​
​ стандартной кнопке закрытия​
​Producty.Range(«Name»).Copy​
​nextRow = Producty.Cells(Producty.Rows.Count,​
​ кнопку​
​ левой клавишей мыши​
​ как «умная» таблица,​ какую-то строчку, то​.​

​ найдется желающий писать​​ не придется​

​Наименование​​ GoTo ErrorHandler sWhatFind​?​ в список формы​ из поля 1​ удалить, с помощью​ помещается на экране.​

​ окон в правом​​В ней параметр​ 2).End(xlUp).Offset(1, 0).Row​«Сохранить»​ перечень данных, которые​ свидетельством чему является​ через кнопки навигации​

​После этого нужный нам​​ большую форму задаром​(дело в том,​|​ = TextBox1.Value If​

​Anton20002​​ данных)​ уже есть в​ кнопок​Перед созданием формы данных​ верхнем углу.​«Name»​

​With Producty​​.​
​ размещены на листе​ даже изменение визуального​ или полосу прокрутки​ инструмент отобразится в​ и вряд ли​ что я не​Калорийность​ sWhatFind <> «»​
​: Да, его заказ.​См. файл​ списке то выводилось​Назад​ необходимо добавить подписи​После этого возвращаемся на​означат имя, которое​If .Range(«A2»).Value =​
​Затем вам следует активировать​

​ в дополнительной табличной​​ отображения. Как видим,​ переходим к соответствующему​ правой части окна.​ Вы сами ее​ знаю языков программирования,​.​ Then ‘With ThisWorkbook.Worksheets(1).[c:c]​

planetaexcel.ru

Форма для ввода данных в эксель (Excel)

​ И не понимаю​​Валера​ бы предупреждение с​и​ вверху каждого столбца​ лист Excel. Теперь​ мы присвоили полю​ «» And .Range(«B2»).Value​

​ работу макросов в​​ области​ помимо прочего, около​

​ ей блоку полей​​ Жмем на кнопку​ напишете.​

​ поэтому мне сложно​​Моя проблема заключаться​
​ Worksheets(«base»).Activate Cells.Find(What:=sWhatFind, After:=ActiveCell,​ почему нельзя показать​​: В развитие задачи​ предложением заменить старые​​Найти далее​

​ в диапазоне или​​ нам следует разместить​

​«Наименование товара»​​ = «» Then​lol lol lol

​ своей версии Excel​​«Список товаров»​

​ каждого названия заголовка​​ в форме. После​«OK»​Мотя​

​ сказать, насколько это​​ в том, что​​ SearchOrder:=xlByColumns).Activate ‘ Затем​​ товар лицом​ Kegrus-а. Надо чтобы​ или добавить новые​

​или полосы прокрутки.​​ таблице. В Excel​ кнопку, которая будет​в форме ввода.​

​nextRow = nextRow​​ и включить вкладку​. После этого опять​ столбцов появились значки​
​ этого щелкаем по​.​​: Уважаемая Ирина!​​ реализуемо​

​ через какое-то время​​ определяем номер строки,​Pelena​ в ComboBox отображались​ данные.​

​Нажмите кнопку​​ эти подписи используются​​ активировать созданный макрос.​​В строках​ — 1​«Разработчик»​ жмем на пиктограмму​ фильтрации. Их следует​ кнопке​Теперь данный инструмент располагается​Не изобретайте велосипед!​А что насчет​ позиций в файле​ в которой находится​:​
​ 2 столбца: №пп​

excelworld.ru

Excel: форма ввода данных в таблицу

​ZVI​​Удалить​
​ для создания полей​ Для этого переходим​.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues​End If​
​, если вы это​ справа от поля,​ отключить. Для этого​«Удалить»​ в окне Excel​Во всех версиях​ корректировки… пока переписывать​ становится очень много,​ слово nRow =​
​Anton20002​ ответа и сам​: —​.​ в форме.​ во вкладку​.Cells(nextRow, 3).Value =​Producty.Range(«Name»).Copy​ до сих пор​ в котором появился​ выделяем любую ячейку​в окошке инструмента.​ на панели быстрого​ EXCEL (2003, 2007,​ записанное меню, вроде​ и каждый раз​ ActiveCell.Rows.Row ‘ nColumn​, Вы так и​ ответ. Например:​В Excel есть​
​Внимание:​Подписи столбцов становятся​«Разработчик»​ Producty.Range(«Volum»).Value​
​.Cells(nextRow, 2).PasteSpecial Paste:=xlPasteValues​ не сделали. Дело​ адрес выделенного диапазона.​
​ «умной» таблицы и​Открывается диалоговое окно предупреждения,​ доступа, и мы​ 2010 — про​ бы, не приходилось​
​ листать в конец​
​ = ActiveCell.Column ‘​

​ не поняли, за​​1 заявка​​ встроенная форма для​​ В Excel будет выведен​ именами полей.​. В блоке настроек​.Cells(nextRow, 4).Value =​
​.Cells(nextRow, 3).Value =​ в том, что​Происходит возврат к окошку​ переходим во вкладку​
​ в котором сообщается,​ им можем воспользоваться.​ 2013 не знаю)​Wasilich​

​ листа, чтобы ввести​​ Эта строка для​

​ что получили два​​2 договор​​ редактирования данных, из​​ запрос на подтверждение​Данные, вводимые в​
​«Элементы управления»​ Producty.Range(«Price»).Value​ Producty.Range(«Volum»).Value​
​ обе эти функции​ проверки вводимых значений.​«Данные»​ что строка будет​ Он будет присутствовать​ штатный режим «Форма»​: Вот зачем усложнять​ очередное блюдо ну​ примера, как определить​ замечания? У нас​3 реализация​ VBA вызывается так:​ операции. После подтверждения​ каждое поле формы,​на ленте кликаем​.Cells(nextRow, 5).Value =​.Cells(nextRow, 4).Value =​ по умолчанию в​ Как видим, координаты​. Там на ленте​ удалена. Если вы​ при открытии любой​ достаточно «кривой» и​
​ и так сложную​ очень неудобно!!​ столбец ячейки ‘​ на форуме платные​4 снижение​Sub ФормаВводаДанных()​ удаление строки нельзя​ помещаются в следующую​ по кнопке​ Producty.Range(«Volum»).Value * Producty.Range(«Price»).Value​ Producty.Range(«Price»).Value​ программе отключены, и​ выделенного диапазона в​ в блоке инструментов​ уверены в своих​ книги данным экземпляром​ ограничен 32 полями​ прогу?​Не могли бы​ И адресуем ячейку:​ заказы разрешено брать​5 увеличение​On Error Resume​ отменить.​ пустую строку.​«Вставить»​наименования​.Cells(nextRow, 5).Value =​ их активацию нужно​ нем уже отображены​«Сортировка и фильтр»​ действиях, то жмите​

​ Excel.​​ БД.​

​Можно же проще.​​ вы подсказать решение​​ On Error Resume​​ только проверенным форумчанам,​
​6 расторжение​ Next​Все строки, следующие за​
​Важно:​. Открывается перечень инструментов.​

​«Volum»​​ Producty.Range(«Volum»).Value * Producty.Range(«Price»).Value​

​ выполнять принудительно в​​ в поле​

​щелкаем по значку​​ на кнопку​

​Теперь, чтобы инструмент понял,​​Установите​

​Bachata​​ моей проблемы? Как​
​ Next TextBox14 =​ то есть тем,​А в соответствующие​
​ActiveSheet.ShowDataForm​ удаленной, перемещаются вверх.​ С помощью формы данных​ В группе инструментов​
​и​.Range(«A2»).Formula = «=IF(ISBLANK(B2),​ окне параметров Excel.​«Источник»​«Фильтр»​«OK»​ что именно ему​БЕСПЛАТНУЮ надстройку​: А можно сделать​ я понимаю, самым​ Cells(nRow, 15) TextBox15​ кто сначала заработал​ ячейки Excel заносился​If Err <>​
​Ввод ряда чисел, дат​ невозможно добавлять, изменять​«Элементы управления формы»​«Price»​ «»»», COUNTA($B$2:B2))»​
​После того, как вы​

​. Кликаем по кнопке​​.​.​ нужно заполнять, следует​

​, ссылку на которую​​ так, чтобы в​ удобным вариантом было​ = Cells(nRow, 16)​ себе репутацию в​ только №пп…​
​ 0 Then MsgBox​
​ или других элементов​ и удалять формулы.​выбираем самый первый​означают названия, которые​
​If nextRow >​ сделали это, переходим​«OK»​Существует ещё один вариант​
​Как видим, строчка была​ оформить шапку таблицы​ на форуме для​ форме которую приложил​ бы создание форм?​ TextBox16 = Cells(nRow,​ основных БЕСПЛАТНЫХ ветках​

​Юрий М​​ «Нет данных», vbInformation,​Автоматическое заполнение списков в​

CyberForum.ru

Простая форма ввода данных (Макросы Sub)

​Выполните одно из перечисленных​​ –​ мы присвоили полям​
​ 2 Then​ во вкладку​внизу окна.​ отключения фильтра. При​ извлечена из табличного​ и записать любое​ всех любезно предложил​:)
​ wild_pig к колонкам​Спасибо! (Файлик прикладываю)​ 17) TextBox1.SetFocus GoTo​ форума.​​: Вот так.​​ «Форма ввода данных»​​ Excel​​ ниже действий.​​«Кнопка»​​«Количество»​
​Range(«A2»).Select​«Разработчик»​Теперь справа от выделенной​ этом не нужно​ диапазона. После того,​ значение в ней.​один из самых уважаемых​ с датой (А:А)​wild_pig​ Ends: ErrorHandler: MsgBox​
​А зачем?​Валера​End Sub​Форма данных позволяет добавлять,​Добавление данных с помощью​.​:)
​и​

​Selection.AutoFill Destination:=Range(«A2:A» &​​. Кликаем по большому​ пустой ячейки объекта​

​ даже будет переходить​​ как заполнение и​ Пусть табличный массив​

​ экспертов форума​​ просто реализовывалась функция​: Меньше еды -​ («Нет такой организации»)​_Adelaida_​: Ээээ, Юрий. Прикреплен​—​ редактировать и удалять​ формы​Затем с зажатой левой​«Цена»​ nextRow)​ значку​:)

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

​-​​ ТДАТА?​​ меньше файлик :)​
​ Ends: Else MsgBox​: Доброго времени суток!​
​ файл с 2​

​ZVI​ записи (строки), а​Щелкните любую ячейку в​ клавишей мыши обводим​

​в той же​​Range(«A2:A» & nextRow).Select​

​«Visual Basic»​​ пиктограмма в виде​ оставаясь во вкладке​:D​ выходить из окна​ состоять из четырех​ZVI​wild_pig​wild_pig​ («Введите название организации»)​
​Но форуме в​ столбцами на листе.​Pavel55​ также отображать только​ диапазоне или таблице,​ курсором область, где​ форме ввода.​End If​, который расположен на​ треугольника. При клике​«Главная»​ инструмента, нажав на​ столбцов, которые имеют​.​: Вот​: А что надо​ End If On​ первый раз, так​ Никакими ComboBox-ами там​

​: Посмотрите пример​​ ту информацию, которая​​ к которым нужно​​ хотим разместить кнопку​В этих же строках,​.Range(«Diapason»).ClearContents​ ленте в блоке​ на неё открывается​. После выделения ячейки​
​ кнопку​ названия​Надстройка:​foxmeyson​ то?​ Error Resume Next​

​ что извините, если​​ и не пахнет​Petr​
​ удовлетворяет определенным критериям.​ добавить строку.​
​ запуска макроса, который​ которые мы указали​End With​ инструментов​ выпадающий список, состоящий​ табличной области на​«Закрыть»​«Наименование товара»​1. не имеет​: Друзья, подскажите, как​Bachata​ Worksheets(«данные»).Activate Application.ScreenUpdating =​ что не так.​ :)​: Спасибо за помощь!!!​ Форма бывает особенно​В меню​ будет производить перенос​ выше, цифры​:)​End Sub​«Код»​ из названий, которые​ ленте в блоке​.​,​:)
​ ограничения на количество​ вы это делаете?​: Ну, как. Хочу​ True​:)

​Мне нужно быстро​​Юрий М​Petr​ полезна, когда строки​:D
​Данные​

​ данных из формы​​«2»​Но этот код не​.​ подтягиваются из табличного​ настроек​После этого для предания​«Количество»​

​ полей БД,​​Просто мне необходимо​

​ сделать форму ввода​​yutrans​ заполнять таблицу в​
​: Я не знал,​: Уважаемый Павел!​ в документе очень​выберите команду​ в таблицу.​,​ универсальный, то есть,​Последнее действие приводит к​ массива​
​«Редактирование»​ табличному массиву более​
​,​

​2. позволяет одним​​ самому написать нечто​ — т.е. чтобы​
​: eritik,Вы файл приложите?​​ экселе, через гуглпоиск​ что Вы не​возникло еще пара​ широкие и нужно​Форма​

​После того, как область​​«3»​​ он в неизменном​​ тому, что запускается​«Список товаров»​щелкаем по значку​ наглядного визуального вида​«Цена»​ движением мыши изменить​
​ подобное, только чтобы​ можно данные было​eritik​ нашла, что это​ сможете запустить кнопку​

​ вопросов.​​ избежать постоянной прокрутки​.​ обведена, отпускаем клавишу​,​ виде подходит только​ редактор макросов VBA.​. Произвольные данные в​«Сортировка и фильтр»​ можно произвести форматирование.​и​ размеры формы,​ форма ввода была​ вводить вверху страницы,​:​ надо сделать форму​ из VBE. Вот​

excelworld.ru

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

​как в последнем​​ листа вправо и​Нажмите кнопку​ мыши. Затем автоматически​«4»​ для нашего случая.​ В области​ указанную ячейку теперь​

​. В появившемся списке​​Кроме того, с помощью​«Сумма»​3. содержит необходимый​ доступна по сети​ а не каждый​yutrans​;)

​ ввода и через​​ Вам с кнопочкой​ вашем примере сделать,​ влево.​Создать​ запускается окно назначения​,​ Если вы хотите​«Project»​ внести невозможно, а​ выбираем позицию​ макроса и ряда​. Вводим данные названия​ минимум инструментов для​ и заносила данные​ раз листать лист​, не могу.​ программирование. Мои знания​ :-)​

​ чтобы появляющееся окно​​Откройте файл Excel.​.​ макроса объекту. Если​«5»​ его приспособить под​, которая расположена в​ только можно выбрать​«Фильтр»​ других инструментов существует​ в произвольный горизонтальный​ работы по ведению​

​ без открытия документа+​​ вниз и добавлять​
​сижу с рабочего​
​ экселя на этом​Валера​ формы не блокировало​Выберите команду​Введите данные для новой​ в вашей книге​означают номера столбцов​ свои потребности, то​
​ верхней левой части​​ из представленного списка​​.​ возможность создать собственную​ диапазон листа.​​ БД.​ данные будут связаны​​ по новой строке​​ компа, на котором​​ заканчиваются.​
​: Сглупил. Просто кнопка​
​ просмотр остальных книг​Форма​ строки.​
​ применяется несколько макросов,​ на листе Excel,​ его следует соответственно​
​ окна, выделяем имя​ нужную позицию. Выбираем​Как видим, после этого​ пользовательскую форму для​

planetaexcel.ru

​Также, чтобы программа поняла,​

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

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

  • Щелкните правой кнопкой мыши на панели быстрого доступа и выберите в контекстном меню пункт Настройка панели быстрого доступа. На экране появится раздел Панель быстрого доступа диалогового окна Параметры Excel.
  • В раскрывающемся списке Выбрать команды из выберите Команды не на ленте.
  • В списке ниже выберите Форма, а затем нажмите кнопку Добавить.
  • Нажмите ОК, чтобы закрыть диалоговое окно Параметры Excel.

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

Рис. 41.1. Форма ввода данных Excel

Рис. 41.1. Форма ввода данных Excel

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

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

Чтобы ввести новую запись, нажмите кнопку Добавить для очистки полей. Теперь вы можете ввести новую информацию в соответствующие поля. Нажмите клавишу Tab или Shift+Tab для перемещения между полями. Когда вы нажмете кнопку Добавить (или Закрыть), данные, которые вы ввели, добавятся в нижнюю часть списка. Вы также можете нажать Enter, что эквивалентно нажатию кнопки Добавить. Если список содержит формулы, они также автоматически вводятся в новую запись.

Если ваш список назван Database, Excel автоматически расширяет определение диапазона так, чтобы он включал новую строку или строки, которые вы добавляете в список с помощью формы. Обратите внимание на то, что этот метод работает только тогда, когда имя списка — Database; никакое другое имя не работает. Используйте команду Формулы ► Определенные имена ► Присвоить имя, чтобы задать имя диапазону. Если список находится в таблице (созданной с помощью команды Вставка ► Таблицы ► Таблица), нет необходимости именовать диапазон. Таблица будет расширена автоматически при добавлении новых данных.

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

  • Удалить — удаляет текущую запись.
  • Вернуть — восстанавливает любую информацию, которую вы редактировали. Вы должны нажать ее, прежде чем нажмете кнопку Добавить.
  • Назад — отображает предыдущую запись в списке. Если вы ввели критерий, эта кнопка показывает предыдущую запись, которая соответствует критерию.
  • Далее — отображает следующую запись в списке. Если вы ввели критерий, эта кнопка показывает следующую запись, которая соответствует критерию.
  • Критерии — очищает поля и позволяет ввести критерий, по которому выполняется поиск записей. Например, чтобы найти записи, в которых значение цены менее $200 000, введите <200000 в поле Цена. Затем вы можете использовать кнопки Назад и Далее для отображения подходящих под критерий записей.
  • Закрыть — закрывает форму (и вводит любые данные, которые вы вводили).

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Как создать один файл word
  • Как создать оглавления в word 2003
  • Как создать оглавление страниц word
  • Как создать оглавление книги excel
  • Как создать оглавление в редакторе word

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии