Содержание
- Применение инструментов заполнения
- Способ 1: встроенный объект для ввода данных Excel
- Способ 2: создание пользовательской формы
- Вопросы и ответы
Для облегчения ввода данных в таблицу в Excel можно воспользоваться специальными формами, которые помогут ускорить процесс заполнения табличного диапазона информацией. В Экселе имеется встроенный инструмент позволяющий производить заполнение подобным методом. Также пользователь может создать собственный вариант формы, которая будет максимально адаптирована под его потребности, применив для этого макрос. Давайте рассмотрим различные варианты использования этих полезных инструментов заполнения в Excel.
Применение инструментов заполнения
Форма заполнения представляет собой объект с полями, наименования которых соответствуют названиям колонок столбцов заполняемой таблицы. В эти поля нужно вводить данные и они тут же будут добавляться новой строкой в табличный диапазон. Форма может выступать как в виде отдельного встроенного инструмента Excel, так и располагаться непосредственно на листе в виде его диапазона, если она создана самим пользователем.
Теперь давайте рассмотрим, как пользоваться этими двумя видами инструментов.
Способ 1: встроенный объект для ввода данных Excel
Прежде всего, давайте узнаем, как применять встроенную форму для ввода данных Excel.
- Нужно отметить, что по умолчанию значок, который её запускает, скрыт и его нужно активировать. Для этого переходим во вкладку «Файл», а затем щелкаем по пункту «Параметры».
- В открывшемся окне параметров Эксель перемещаемся в раздел «Панель быстрого доступа». Большую часть окна занимает обширная область настроек. В левой её части находятся инструменты, которые могут быть добавлены на панель быстрого доступа, а в правой – уже присутствующие.
В поле «Выбрать команды из» устанавливаем значение «Команды не на ленте». Далее из списка команд, расположенного в алфавитном порядке, находим и выделяем позицию «Форма…». Затем жмем на кнопку «Добавить».
- После этого нужный нам инструмент отобразится в правой части окна. Жмем на кнопку «OK».
- Теперь данный инструмент располагается в окне Excel на панели быстрого доступа, и мы им можем воспользоваться. Он будет присутствовать при открытии любой книги данным экземпляром Excel.
- Теперь, чтобы инструмент понял, что именно ему нужно заполнять, следует оформить шапку таблицы и записать любое значение в ней. Пусть табличный массив у нас будет состоять из четырех столбцов, которые имеют названия «Наименование товара», «Количество», «Цена» и «Сумма». Вводим данные названия в произвольный горизонтальный диапазон листа.
- Также, чтобы программа поняла, с каким именно диапазонам ей нужно будет работать, следует ввести любое значение в первую строку табличного массива.
- После этого выделяем любую ячейку заготовки таблицы и щелкаем на панели быстрого доступа по значку «Форма…», который мы ранее активировали.
- Итак, открывается окно указанного инструмента. Как видим, данный объект имеет поля, которые соответствуют названиям столбцов нашего табличного массива. При этом первое поле уже заполнено значением, так как мы его ввели вручную на листе.
- Вводим значения, которые считаем нужными и в остальные поля, после чего жмем на кнопку «Добавить».
- После этого, как видим, в первую строку таблицы были автоматически перенесены введенные значения, а в форме произошел переход к следующему блоку полей, который соответствуют второй строке табличного массива.
- Заполняем окно инструмента теми значениями, которые хотим видеть во второй строке табличной области, и снова щелкаем по кнопке «Добавить».
- Как видим, значения второй строчки тоже были добавлены, причем нам даже не пришлось переставлять курсор в самой таблице.
- Таким образом, заполняем табличный массив всеми значениями, которые хотим в неё ввести.
- Кроме того, при желании, можно производить навигацию по ранее введенным значениям с помощью кнопок «Назад» и «Далее» или вертикальной полосы прокрутки.
- При необходимости можно откорректировать любое значение в табличном массиве, изменив его в форме. Чтобы изменения отобразились на листе, после внесения их в соответствующий блок инструмента, жмем на кнопку «Добавить».
- Как видим, изменение сразу произошло и в табличной области.
- Если нам нужно удалить, какую-то строчку, то через кнопки навигации или полосу прокрутки переходим к соответствующему ей блоку полей в форме. После этого щелкаем по кнопке «Удалить» в окошке инструмента.
- Открывается диалоговое окно предупреждения, в котором сообщается, что строка будет удалена. Если вы уверены в своих действиях, то жмите на кнопку «OK».
- Как видим, строчка была извлечена из табличного диапазона. После того, как заполнение и редактирование закончено, можно выходить из окна инструмента, нажав на кнопку «Закрыть».
- После этого для предания табличному массиву более наглядного визуального вида можно произвести форматирование.
Способ 2: создание пользовательской формы
Кроме того, с помощью макроса и ряда других инструментов существует возможность создать собственную пользовательскую форму для заполнения табличной области. Она будет создаваться прямо на листе, и представлять собой её диапазон. С помощью данного инструмента пользователь сам сможет реализовать те возможности, которые считает нужными. По функционалу он практически ни в чем не будет уступать встроенному аналогу Excel, а кое в чем, возможно, превосходить его. Единственный недостаток состоит в том, что для каждого табличного массива придется составлять отдельную форму, а не применять один и тот же шаблон, как это возможно при использовании стандартного варианта.
- Как и в предыдущем способе, прежде всего, нужно составить шапку будущей таблицы на листе. Она будет состоять из пяти ячеек с именами: «№ п/п», «Наименование товара», «Количество», «Цена», «Сумма».
- Далее нужно из нашего табличного массива сделать так называемую «умную» таблицу, с возможностью автоматического добавления строчек при заполнении соседних диапазонов или ячеек данными. Для этого выделяем шапку и, находясь во вкладке «Главная», жмем на кнопку «Форматировать как таблицу» в блоке инструментов «Стили». После этого открывается список доступных вариантов стилей. На функционал выбор одного из них никак не повлияет, поэтому выбираем просто тот вариант, который считаем более подходящим.
- Затем открывается небольшое окошко форматирования таблицы. В нем указан диапазон, который мы ранее выделили, то есть, диапазон шапки. Как правило, в данном поле заполнено все верно. Но нам следует установить галочку около параметра «Таблица с заголовками». После этого жмем на кнопку «OK».
- Итак, наш диапазон отформатирован, как «умная» таблица, свидетельством чему является даже изменение визуального отображения. Как видим, помимо прочего, около каждого названия заголовка столбцов появились значки фильтрации. Их следует отключить. Для этого выделяем любую ячейку «умной» таблицы и переходим во вкладку «Данные». Там на ленте в блоке инструментов «Сортировка и фильтр» щелкаем по значку «Фильтр».
Существует ещё один вариант отключения фильтра. При этом не нужно даже будет переходить на другую вкладку, оставаясь во вкладке «Главная». После выделения ячейки табличной области на ленте в блоке настроек «Редактирование» щелкаем по значку «Сортировка и фильтр». В появившемся списке выбираем позицию «Фильтр».
- Как видим, после этого действия значки фильтрации исчезли из шапки таблицы, как это и требовалось.
- Затем нам следует создать саму форму ввода данных. Она тоже будет представлять собой своего рода табличный массив, состоящий из двух столбцов. Наименования строк данного объекта будут соответствовать именам столбцов основной таблицы. Исключение составляют столбцы «№ п/п» и «Сумма». Они будут отсутствовать. Нумерация первого из них будет происходить при помощи макроса, а расчет значений во втором будет производиться путем применения формулы умножения количества на цену.
Второй столбец объекта ввода данных оставим пока что пустым. Непосредственно в него позже будут вводиться значения для заполнения строк основного табличного диапазона.
- После этого создаем ещё одну небольшую таблицу. Она будет состоять из одного столбца и в ней разместится список товаров, которые мы будем выводить во вторую колонку основной таблицы. Для наглядности ячейку с заголовком данного перечня («Список товаров») можно залить цветом.
- Затем выделяем первую пустую ячейку объекта ввода значений. Переходим во вкладку «Данные». Щелкаем по значку «Проверка данных», который размещен на ленте в блоке инструментов «Работа с данными».
- Запускается окно проверки вводимых данных. Кликаем по полю «Тип данных», в котором по умолчанию установлен параметр «Любое значение».
- Из раскрывшихся вариантов выбираем позицию «Список».
- Как видим, после этого окно проверки вводимых значений несколько изменило свою конфигурацию. Появилось дополнительное поле «Источник». Щелкаем по пиктограмме справа от него левой клавишей мыши.
- Затем окно проверки вводимых значений сворачивается. Выделяем курсором с зажатой левой клавишей мыши перечень данных, которые размещены на листе в дополнительной табличной области «Список товаров». После этого опять жмем на пиктограмму справа от поля, в котором появился адрес выделенного диапазона.
- Происходит возврат к окошку проверки вводимых значений. Как видим, координаты выделенного диапазона в нем уже отображены в поле «Источник». Кликаем по кнопке «OK» внизу окна.
- Теперь справа от выделенной пустой ячейки объекта ввода данных появилась пиктограмма в виде треугольника. При клике на неё открывается выпадающий список, состоящий из названий, которые подтягиваются из табличного массива «Список товаров». Произвольные данные в указанную ячейку теперь внести невозможно, а только можно выбрать из представленного списка нужную позицию. Выбираем пункт в выпадающем списке.
- Как видим, выбранная позиция тут же отобразилась в поле «Наименование товара».
- Далее нам нужно будет присвоить имена тем трем ячейкам формы ввода, куда мы будем вводить данные. Выделяем первую ячейку, где уже установлено в нашем случае наименование «Картофель». Далее переходим в поле наименования диапазонов. Оно расположено в левой части окна Excel на том же уровне, что и строка формул. Вводим туда произвольное название. Это может быть любое наименование на латинице, в котором нет пробелов, но лучше все-таки использовать названия близкие к решаемым данным элементом задачам. Поэтому первую ячейку, в которой содержится название товара, назовем «Name». Пишем данное наименование в поле и жмем на клавишу Enter на клавиатуре.
- Точно таким же образом присваиваем ячейке, в которую будем вводить количество товара, имя «Volum».
- А ячейке с ценой – «Price».
- После этого точно таким же образом даем название всему диапазону из вышеуказанных трех ячеек. Прежде всего, выделим, а потом дадим ему наименование в специальном поле. Пусть это будет имя «Diapason».
- После последнего действия обязательно сохраняем документ, чтобы названия, которые мы присвоили, смог воспринимать макрос, созданный нами в дальнейшем. Для сохранения переходим во вкладку «Файл» и кликаем по пункту «Сохранить как…».
- В открывшемся окне сохранения в поле «Тип файлов» выбираем значение «Книга Excel с поддержкой макросов (.xlsm)». Далее жмем на кнопку «Сохранить».
- Затем вам следует активировать работу макросов в своей версии Excel и включить вкладку «Разработчик», если вы это до сих пор не сделали. Дело в том, что обе эти функции по умолчанию в программе отключены, и их активацию нужно выполнять принудительно в окне параметров Excel.
- После того, как вы сделали это, переходим во вкладку «Разработчик». Кликаем по большому значку «Visual Basic», который расположен на ленте в блоке инструментов «Код».
- Последнее действие приводит к тому, что запускается редактор макросов VBA. В области «Project», которая расположена в верхней левой части окна, выделяем имя того листа, где располагаются наши таблицы. В данном случае это «Лист 1».
- После этого переходим к левой нижней области окна под названием «Properties». Тут расположены настройки выделенного листа. В поле «(Name)» следует заменить кириллическое наименование («Лист1») на название, написанное на латинице. Название можно дать любое, которое вам будет удобнее, главное, чтобы в нем были исключительно символы латиницы или цифры и отсутствовали другие знаки или пробелы. Именно с этим именем будет работать макрос. Пусть в нашем случае данным названием будет «Producty», хотя вы можете выбрать и любое другое, соответствующее условиям, которые были описаны выше.
В поле «Name» тоже можно заменить название на более удобное. Но это не обязательно. При этом допускается использование пробелов, кириллицы и любых других знаков. В отличие от предыдущего параметра, который задает наименование листа для программы, данный параметр присваивает название листу, видимое пользователю на панели ярлыков.
Как видим, после этого автоматически изменится и наименование Листа 1 в области «Project», на то, которое мы только что задали в настройках.
- Затем переходим в центральную область окна. Именно тут нам нужно будет записать сам код макроса. Если поле редактора кода белого цвета в указанной области не отображается, как в нашем случае, то жмем на функциональную клавишу F7 и оно появится.
- Теперь для конкретно нашего примера нужно записать в поле следующий код:
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» редактора макросов. Естественно, это нужно делать только в том случае, если вы назвали лист по-другому.
Теперь рассмотрим такую строку:
nextRow = Producty.Cells(Producty.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
Цифра «2» в данной строчке означает второй столбец листа. Именно в этом столбце находится колонка «Наименование товара». По ней мы будем считать количество рядов. Поэтому, если в вашем случае аналогичный столбец имеет другой порядок по счету, то нужно ввести соответствующее число. Значение «End(xlUp).Offset(1, 0).Row» в любом случае оставляем без изменений.
Далее рассмотрим строку
If .Range("A2").Value = "" And .Range("B2").Value = "" Then
«A2» — это координаты первой ячейки, в которой будет выводиться нумерация строк. «B2» — это координаты первой ячейки, по которой будет производиться вывод данных («Наименование товара»). Если они у вас отличаются, то введите вместо этих координат свои данные.
Переходим к строке
Producty.Range("Name").Copy
В ней параметр «Name» означат имя, которое мы присвоили полю «Наименование товара» в форме ввода.
В строках
.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» означают названия, которые мы присвоили полям «Количество» и «Цена» в той же форме ввода.
В этих же строках, которые мы указали выше, цифры «2», «3», «4», «5» означают номера столбцов на листе Excel, соответствующих колонкам «Наименование товара», «Количество», «Цена» и «Сумма». Поэтому, если в вашем случае таблица сдвинута, то нужно указать соответствующие номера столбцов. Если столбцов больше, то по аналогии нужно добавить её строки в код, если меньше – то убрать лишние.
В строке производится умножение количества товара на его цену:
.Cells(nextRow, 5).Value = Producty.Range("Volum").Value * Producty.Range("Price").Value
Результат, как видим из синтаксиса записи, будет выводиться в пятый столбец листа Excel.
В этом выражении выполняется автоматическая нумерация строк:
If nextRow > 2 Then
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A" & nextRow)
Range("A2:A" & nextRow).Select
End If
Все значения «A2» означают адрес первой ячейки, где будет производиться нумерация, а координаты «A» — адрес всего столбца с нумерацией. Проверьте, где именно будет выводиться нумерация в вашей таблице и измените данные координаты в коде, если это необходимо.
В строке производится очистка диапазона формы ввода данных после того, как информация из неё была перенесена в таблицу:
.Range("Diapason").ClearContents
Не трудно догадаться, что («Diapason») означает наименование того диапазона, который мы ранее присвоили полям для ввода данных. Если вы дали им другое наименование, то в этой строке должно быть вставлено именно оно.
Дальнейшая часть кода универсальна и во всех случаях будет вноситься без изменений.
После того, как вы записали код макроса в окно редактора, следует нажать на значок сохранения в виде дискеты в левой части окна. Затем можно его закрывать, щелкнув по стандартной кнопке закрытия окон в правом верхнем углу.
- После этого возвращаемся на лист Excel. Теперь нам следует разместить кнопку, которая будет активировать созданный макрос. Для этого переходим во вкладку «Разработчик». В блоке настроек «Элементы управления» на ленте кликаем по кнопке «Вставить». Открывается перечень инструментов. В группе инструментов «Элементы управления формы» выбираем самый первый – «Кнопка».
- Затем с зажатой левой клавишей мыши обводим курсором область, где хотим разместить кнопку запуска макроса, который будет производить перенос данных из формы в таблицу.
- После того, как область обведена, отпускаем клавишу мыши. Затем автоматически запускается окно назначения макроса объекту. Если в вашей книге применяется несколько макросов, то выбираем из списка название того, который мы выше создавали. У нас он называется «DataEntryForm». Но в данном случае макрос один, поэтому просто выбираем его и жмем на кнопку «OK» внизу окна.
- После этого можно переименовать кнопку, как вы захотите, просто выделив её текущее название.
В нашем случае, например, логично будет дать ей имя «Добавить». Переименовываем и кликаем мышкой по любой свободной ячейке листа.
- Итак, наша форма полностью готова. Проверим, как она работает. Вводим в её поля необходимые значения и жмем на кнопку «Добавить».
- Как видим, значения перемещены в таблицу, строке автоматически присвоен номер, сумма посчитана, поля формы очищены.
- Повторно заполняем форму и жмем на кнопку «Добавить».
- Как видим, и вторая строка также добавлена в табличный массив. Это означает, что инструмент работает.
Читайте также:
Как создать макрос в Excel
Как создать кнопку в Excel
В Экселе существует два способа применения формы заполнения данными: встроенная и пользовательская. Применение встроенного варианта требует минимум усилий от пользователя. Его всегда можно запустить, добавив соответствующий значок на панель быстрого доступа. Пользовательскую форму нужно создавать самому, но если вы хорошо разбираетесь в коде VBA, то сможете сделать этот инструмент максимально гибким и подходящим под ваши нужды.
С помощью OLE можно включать контент из других программ, таких как Word или Excel.
OLE поддерживается многими различными программами, а OLE используется для того, чтобы содержимое, созданное в одной программе, было доступно в другой программе. Например, можно вставить документ Office Word в книгу Office Excel. Чтобы узнать, какие типы содержимого можно вставить, на вкладке Вставка в группе Текст нажмитекнопку Объект. В поле Тип объекта отображаются только программы, которые установлены на компьютере и поддерживают объекты OLE.
При копировании данных между Excel или любой программой, которая поддерживает OLE, например Word, вы можете скопировать их как связанный объект или внедренный объект. Основные различия между связанными и внедренными объектами заключается в том, где хранятся данные и как обновляется объект после его конечный файл. Внедренные объекты хранятся в книге, в которую они вставляются, и не обновляются. Связанные объекты остаются отдельными файлами, и их можно обновлять.
Связанные и внедренные объекты в документе
1. Внедренный объект не имеет подключения к исходным файлам.
2. Связанный объект связан с исходным файлом.
3. Исходный файл обновляет связанный объект.
Когда использовать связанные объекты
Если вы хотите, чтобы данные в конечный файл обновлялись при исходный файл изменения, используйте связанные объекты.
При связываемом объекте исходные данные сохраняются в исходном файле. В конечном файле отображается представление связанных данных, но хранится только расположение исходных данных (и размер, если объект является объектом диаграммы Excel). Исходный файл должен оставаться доступным на компьютере или в сети, чтобы сохранить связь с исходными данными.
Связанные данные могут обновляться автоматически при изменении исходных данных в исходном файле. Например, если вы вы выбрали абзац в документе Word, а затем вклеили его как связанный объект в книгу Excel, то при изменении сведений в документе Word сведения могут обновляться в Excel.
Когда использовать внедренные объекты
Если вы не хотите обновлять скопированные данные при их внесении в исходный файл, используйте внедренный объект. Версия источника полностью внедрена в книгу. При копировании данных как внедренных объектов в файле назначения требуется больше места на диске, чем при связываи.
Когда пользователь открывает файл на другом компьютере, он может просмотреть внедренный объект, не имея доступа к исходным данным. Поскольку внедренный объект не имеет ссылок на исходный файл, он не обновляется при изменении исходных данных. Чтобы изменить внедренный объект, дважды щелкните его, чтобы открыть и изменить в программе-источнике. На компьютере должна быть установлена программа-источник (или другая программа, которая может редактировать объект).
Изменение способа отображения объекта OLE
Вы можете отобразить связанный объект или внедренный объект в книге точно так же, как в программа-источник или в качестве значка. Если книга будет просмотрена в Интернете и вы не собираетесь ее печатать, вы можете отобразить объект в виде значка. Таким образом уменьшается объем отображаемого пространства, занимаемого объектом. Пользователи, которые хотят отобразить сведения, могут дважды щелкнуть значок.
Внедрение объекта на лист
-
Щелкните ячейку листа, в которую вы хотите вставить объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект .
-
В диалоговом окне Объект перейдите на вкладку Создание из файла.
-
Нажмите кнопку Обзор и выберите файл, который вы хотите вставить.
-
Если вы хотите вставить в электронную таблицу значок, а не содержимое файла, установите флажок В виде значка. Если флажки не установлены, Excel выводит первую страницу файла. В обоих случаях при двойном щелчке открывается полный файл. Нажмите кнопку ОК.
Примечание: После добавления значка или файла его можно перетащить в любое место на нем. Кроме того, вы можете с помощью химок и химок переумноовать значок или файл. Чтобы найти их, щелкните файл или значок один раз.
Вставка ссылки на файл
Иногда нужно просто добавить ссылку на объект, а не внедрять его. Это можно сделать, если книга и объект, который вы хотите добавить, хранятся на сайте SharePoint, общем сетевом диске или в аналогичном постоянном расположении. Это удобно, если связанный объект изменяется, так как ссылка всегда будет открывать его последнюю версию.
Примечание: Если связанный файл переместить, ссылка не будет работать.
-
Щелкните ячейку листа, в которую вы хотите вставить объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект .
-
Перейдите на вкладку Создание из файла.
-
Нажмите кнопку Обзор, а затем выберите файл, на который вы хотите создать ссылку.
-
Установите флажок Связь с файлом, а затем нажмите кнопку ОК.
Создание объекта в Excel
Вы можете создать объект с помощью другой программы, не выходя из книги. Например, если вы хотите добавить более подробное описание в диаграмму или таблицу, вы можете создать в Excel внедренный документ, например Word или PowerPoint. Можно вставить объект непосредственно на лист или добавить значок для открытия файла.
-
Щелкните ячейку листа, в которую вы хотите вставить объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект .
-
На вкладке Новый выберите в списке тип объекта, который вы хотите вставить. Если вы хотите вставить в электронную таблицу значок, а не сам объект, установите флажок В виде значка.
-
Нажмите кнопку ОК. В зависимости от типа вставляемого файла откроется новое окно программы или появится окно редактирования.
-
Создайте объект, который вы хотите вставить.
Если Excel открыл новое окно программы для создания объекта, вы можете работать непосредственно в нем.
Когда вы закончите работу в этом окне, вы можете перейти к другим задачам, не сохраняя внедренный объект. При закрытии книги новые объекты будут сохранены автоматически.
Примечание: После добавления объекта его можно перетащить в любое место на Excel. Вы также можете с помощью химок переуравнять размер объекта. Чтобы найти их, щелкните объект один раз.
Внедрение объекта на лист
-
Щелкните ячейку листа, в которую вы хотите вставить объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект.
-
Откройте вкладку Из файла.
-
Нажмите кнопку Обзор и выберите файл, который вы хотите вставить.
-
Если вы хотите вставить в электронную таблицу значок, а не содержимое файла, установите флажок В виде значка. Если флажки не установлены, Excel выводит первую страницу файла. В обоих случаях при двойном щелчке открывается полный файл. Нажмите кнопку ОК.
Примечание: После добавления значка или файла его можно перетащить в любое место на нем. Кроме того, вы можете с помощью химок и химок переумноовать значок или файл. Чтобы найти их, щелкните файл или значок один раз.
Вставка ссылки на файл
Иногда нужно просто добавить ссылку на объект, а не внедрять его. Это можно сделать, если книга и объект, который вы хотите добавить, хранятся на сайте SharePoint, общем сетевом диске или в аналогичном постоянном расположении. Это удобно, если связанный объект изменяется, так как ссылка всегда будет открывать его последнюю версию.
Примечание: Если связанный файл переместить, ссылка не будет работать.
-
Щелкните ячейку листа, в которую вы хотите вставить объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект.
-
Откройте вкладку Из файла.
-
Нажмите кнопку Обзор, а затем выберите файл, на который вы хотите создать ссылку.
-
Установите флажок Связь с файлом, а затем нажмите кнопку ОК.
Создание объекта в Excel
Вы можете создать объект с помощью другой программы, не выходя из книги. Например, если вы хотите добавить более подробное описание в диаграмму или таблицу, вы можете создать в Excel внедренный документ, например Word или PowerPoint. Можно вставить объект непосредственно на лист или добавить значок для открытия файла.
-
Щелкните ячейку листа, в которую вы хотите вставить объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект.
-
На вкладке Новый выберите в списке тип объекта, который вы хотите вставить. Если вы хотите вставить в электронную таблицу значок, а не сам объект, установите флажок В виде значка.
-
Нажмите кнопку ОК. В зависимости от типа вставляемого файла откроется новое окно программы или появится окно редактирования.
-
Создайте объект, который вы хотите вставить.
Если Excel открыл новое окно программы для создания объекта, вы можете работать непосредственно в нем.
Когда вы закончите работу в этом окне, вы можете перейти к другим задачам, не сохраняя внедренный объект. При закрытии книги новые объекты будут сохранены автоматически.
Примечание: После добавления объекта его можно перетащить в любое место на Excel. Вы также можете с помощью химок переуравнять размер объекта. Чтобы найти их, щелкните объект один раз.
Связывать или встраить содержимое из другой программы с помощью OLE
Вы можете связать или встраить весь контент или его часть из другой программы.
Создание ссылки на содержимое из другой программы
-
Щелкните на том месте таблицы, куда вы хотите связанный объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект.
-
Откройте вкладку Из файла.
-
В поле Имя файла введите имя файла или нажмите кнопку Обзор, чтобы выбрать его из списка.
-
Выберите поле Связать с файлом.
-
Выполните одно из указанных ниже действий.
-
Чтобы отобразить содержимое, разо убедитесь, что он отображается в значке.
-
Чтобы отобразить значок, выберите его. При желании, чтобы изменить изображение или подпись значка по умолчанию, нажмите кнопку Изменить значок ,а затем щелкните нужный значок в списке Значки или введите подпись в поле Название.
Примечание: С помощью команды Объект нельзя вставлять рисунки и файлы определенных типов. Чтобы вставить рисунок или файл, на вкладке Вставка в группе Иллюстрации нажмите кнопку Рисунок.
-
Встраить содержимое из другой программы
-
Щелкните на том месте таблицы, куда вы хотите внедренный объект.
-
На вкладке Вставка в группе Текст нажмите кнопку Объект.
-
Если документ еще не существует, перейдите на вкладку Создание. В поле Тип объекта выберите тип объекта, который вы хотите создать.
Если документ уже существует, перейдите на вкладку Создание из файла. В поле Имя файла введите имя файла или нажмите кнопку Обзор, чтобы выбрать его из списка.
-
Чтобы сделать это, разочистим его.
-
Выполните одно из указанных ниже действий.
-
Чтобы отобразить содержимое, разо убедитесь, что он отображается в значке.
-
Чтобы отобразить значок, выберите его. Чтобы изменить изображение или метку значка по умолчанию, нажмите кнопку Изменить значок ивыберите нужный значок в списке Значки или введите подпись в поле Подпись.
-
Связывать или встраить частичное содержимое из другой программы
-
В программе, отличной от Excel, выберите сведения, которые нужно скопировать как ссылку или внедренный объект.
-
На вкладке Главная в группе Буфер обмена нажмите кнопку Копировать.
-
Перейдите на нужный таблицу и щелкните место, на котором они должны отображаться.
-
На вкладке Главная в группе Буфер обмена щелкните стрелку под кнопкой Вставить и выберите команду Специальная вставка.
-
Выполните одно из указанных ниже действий.
-
Чтобы вклеить данные как связанный объект, нажмите кнопку Вировать ссылку.
-
Чтобы в paste information as an embedded object , click Paste. В поле Как щелкните запись со словом «объект» в названии. Например, если вы скопировали данные из документа Word, выберите объект документа Microsoft Word.
-
Изменение способа отображения объекта OLE
-
Щелкните правой кнопкой мыши значок или объект, выберите тип объекта(например,Документ) и нажмите кнопку Преобразовать.
-
Выполните одно из указанных ниже действий.
-
Чтобы отобразить содержимое, разо убедитесь, что он отображается в значке.
-
Чтобы отобразить значок, выберите его. При желании вы можете изменить изображение или метку значка по умолчанию. Для этого нажмите кнопку Изменить значоки выберите нужный значок в списке Значки или введите подпись в поле Подпись.
-
Управление обновлениями связанных объектов
Ссылки на другие программы можно обновлять следующим образом: автоматически при конечный файл; вручную, если вы хотите увидеть предыдущие данные перед обновлением с новыми данными из исходный файл; или при запросе обновления независимо от того, включено ли автоматическое или ручное обновление.
Настройка ссылки на другую программу для обновления вручную
-
На вкладке Данные в группе Подключения нажмите кнопку Изменить связи.
Примечание: Команда Изменить ссылки недоступна, если файл не содержит ссылок на другие файлы.
-
Из списка Источник выберите связанный объект, который необходимо изменить. A встолбце Обновление означает, что ссылка является автоматической, а M в столбце Обновление означает, что для ссылки установлено обновление вручную.
Совет: Для выделения нескольких связанных объектов щелкните каждый из них, удерживая нажатой клавишу CTRL. Чтобы выбрать все связанные объекты, нажмите CTRL+A.
-
Чтобы обновить связанный объект только при нажатии кнопки Обновить значения,выберите вручную.
Настройка автоматического обновления ссылки на другую программу
-
На вкладке Данные в группе Подключения нажмите кнопку Изменить связи.
Примечание: Команда Изменить ссылки недоступна, если файл не содержит ссылок на другие файлы.
-
Из списка Источник выберите связанный объект, который необходимо изменить. A встолбце Обновление означает, что ссылка будет обновляться автоматически, а M в столбце Обновление означает, что связь должна обновляться вручную.
Совет: Для выделения нескольких связанных объектов щелкните каждый из них, удерживая нажатой клавишу CTRL. Чтобы выбрать все связанные объекты, нажмите CTRL+A.
-
Нажмите кнопку ОК.
Проблема: не получается обновить автоматические ссылки на моем сайте
Параметр Автоматически может быть переопределен параметром Обновлять ссылки на другие документы Excel.
Чтобы автоматически обновлять связи с объектами OLE:
-
Нажмите кнопку Microsoft Office , щелкните Параметры Excelи выберите категорию Дополнительные параметры.
-
Убедитесь,что в поле При вычислении данной книги выбрано поле Обновить связи с другими документами.
Обновление ссылки на другую программу
-
На вкладке Данные в группе Подключения нажмите кнопку Изменить связи.
Примечание: Отсутствие команды Изменить связи означает, что файл не содержит связанных данных.
-
Из списка Источник выберите связанный объект, который необходимо изменить.
Совет: Для выделения нескольких связанных объектов щелкните каждый из них, удерживая нажатой клавишу CTRL. Чтобы выбрать все связанные объекты, нажмите CTRL+A.
-
Нажмите кнопку Обновить значения.
Редактирование содержимого в программе OLE
Находясь в Excel, вы можете изменить контент, связанный или внедренный из другой программы.
Изменение связанного объекта в программе-источнике
-
На вкладке Данные в группе Подключения нажмите кнопку Изменить связи.
Примечание: Отсутствие команды Изменить связи означает, что файл не содержит связанных данных.
-
В списке Исходный файл выберите источник файла связанный объект и нажмите кнопку С открытым кодом.
-
Внести нужные изменения в связанный объект.
-
Зайдите программа-источник, чтобы вернуться к файлу назначения.
Изменение внедренного объекта в программе-источнике
-
Дважды щелкните внедренный объект, чтобы открыть его.
-
Внести в объект нужные изменения.
-
Если вы редактируете объект на месте в открытой программе, щелкните в любом месте за пределами объекта, чтобы вернуться к конечный файл.
Если вы редактируете внедренный объект в программе-источнике в отдельном окне, зайдите из программы-источника, чтобы вернуться к файлу назначения.
Примечание: При двойном щелчке внедренных объектов, таких как видеоклипы и звуковые клипы, объект воспроизводится, а не открывается программа. Чтобы изменить один из внедренных объектов, щелкните правой кнопкой мыши значок или объект, выберите тип объекта(например,Объект клипа мультимедиа) и нажмите кнопку Изменить.
Изменение внедренного объекта в программе, которая не является программой-источником
-
Выберите внедренный объект, которую вы хотите изменить.
-
Щелкните правой кнопкой мыши значок или объект, выберите тип объекта(например,Документ) и нажмите кнопку Преобразовать.
-
Выполните одно из указанных ниже действий.
-
Чтобы преобразовать внедренный объект в тип, который вы указали в списке, нажмите кнопку Преобразовать в.
-
Чтобы открыть внедренный объект с типом, который вы указываете в списке, не изменяя тип внедренного объекта, нажмите кнопку Активировать.
-
Выбор объекта OLE с помощью клавиатуры
-
Нажмите CTRL+G, чтобы отобразить диалоговое окно Перейти.
-
Нажмите кнопкуСпециальный, выберите объектыи нажмите кнопку ОК.
-
Нажимая tab, выберите нужный объект.
-
Нажмите shift+F10.
-
Найдите пункт Объект или Объект диаграммыи нажмите кнопку Изменить.
Проблема: при двойном щелчке связанного или внедренного объекта появляется сообщение «Не удается изменить»
Это сообщение появляется, исходный файл или программа-источник не открывается.
Убедитесь, что доступна программа-источник Если программа-источник не установлена на компьютере, преобразуйте объект в формат файла установленного приложения.
Обеспечение достаточной памяти Убедитесь, что у вас достаточно памяти для запуска программы-источника. Закроем другие программы, чтобы освободить память.
Закрыть все диалоговое окно Если исходная программа запущена, убедитесь, что в ней нет открытых диалогов. Переключиться в программу-источник и закрыть все открытые диалоговое окно.
Закрыть исходный файл Если исходный файл является связанным объектом, убедитесь, что он не открыт другим пользователем.
Убедитесь, что имя файла не изменилось Если исходный файл, который вы хотите изменить, является связанным объектом, убедитесь, что он имеет то же имя, что и при ее создания, и что он не был перемещен. Выберите связанный объект и нажмите кнопку Изменить связи в группе Подключения на вкладке Данные, чтобы увидеть имя источника. Если исходный файл переименован или перемещен, используйте кнопку Изменить источник в диалоговом окне Изменение связей, чтобы найти исходный файл и повторно подключить ссылку.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Шаги
-
1
Откройте сводную таблицу Excel. Дважды щелкните по файлу Excel со сводной таблицей, чтобы открыть ее.
-
2
Перейдите на лист с нужными данными. Щелкните по листу (например, по «Лист2») внизу окна Excel.
-
3
Добавьте или измените данные. Введите данные, которые вы хотите добавить в сводную таблицу, рядом или под текущими данными.
- Например, если данные находятся в ячейках с A1 по E10, введите дополнительные данные в столбце «F» или в строке «11».
- Если вы просто хотите изменить существующие данные, сделайте это.
-
4
Вернитесь на лист со сводной таблицей. Щелкните по листу (например, по «Лист1») внизу окна Excel.
-
5
Выберите сводную таблицу. Для этого нажмите на нее.
-
6
Щелкните по вкладке Анализ. Она находится в центре зеленой ленты, которая расположена в верхней части окна Excel. Под зеленой лентой откроется панель инструментов.
- На компьютере Mac перейдите на вкладку «Анализ сводной таблицы».
-
7
Нажмите Изменить источник данных. Эта опция находится в разделе «Данные» панели инструментов «Анализ». Раскроется меню.
-
8
Нажмите Изменить источник данных. Эта опция находится в меню. Откроется окно.
-
9
Выберите данные. Удерживайте кнопку мыши и перетащите указатель из верхней левой ячейки в нижнюю левую ячейку с данными, включая добавленные вами данные в столбце (столбцах) или в строке (строках).
-
10
Щелкните по OK. Эта кнопка находится внизу окна.
-
11
Нажмите Обновить. Эта опция находится в разделе «Данные» на панели инструментов.
- Если вы добавили новый столбец в сводную таблицу, отметьте его в правой части окна Excel, чтобы отобразить его.
Реклама
Советы
- Сохраните сводную таблицу, прежде чем вносить в нее изменения, чтобы вернуться к сохраненной версии, если что-то пойдет не так.
Реклама
Об этой статье
Эту страницу просматривали 22 259 раз.
Была ли эта статья полезной?
Под выпадающим списком понимается содержание в одной ячейке нескольких значений. Когда пользователь щелкает по стрелочке справа, появляется определенный перечень. Можно выбрать конкретное.
Очень удобный инструмент Excel для проверки введенных данных. Повысить комфорт работы с данными позволяют возможности выпадающих списков: подстановка данных, отображение данных другого листа или файла, наличие функции поиска и зависимости.
Создание раскрывающегося списка
Путь: меню «Данные» — инструмент «Проверка данных» — вкладка «Параметры». Тип данных – «Список».
Ввести значения, из которых будет складываться выпадающий список, можно разными способами:
- Вручную через «точку-с-запятой» в поле «Источник».
- Ввести значения заранее. А в качестве источника указать диапазон ячеек со списком.
- Назначить имя для диапазона значений и в поле источник вписать это имя.
Любой из вариантов даст такой результат.
Выпадающий список в Excel с подстановкой данных
Необходимо сделать раскрывающийся список со значениями из динамического диапазона. Если вносятся изменения в имеющийся диапазон (добавляются или удаляются данные), они автоматически отражаются в раскрывающемся списке.
- Выделяем диапазон для выпадающего списка. В главном меню находим инструмент «Форматировать как таблицу».
- Откроются стили. Выбираем любой. Для решения нашей задачи дизайн не имеет значения. Наличие заголовка (шапки) важно. В нашем примере это ячейка А1 со словом «Деревья». То есть нужно выбрать стиль таблицы со строкой заголовка. Получаем следующий вид диапазона:
- Ставим курсор в ячейку, где будет находиться выпадающий список. Открываем параметры инструмента «Проверка данных» (выше описан путь). В поле «Источник» прописываем такую функцию:
Протестируем. Вот наша таблица со списком на одном листе:
Добавим в таблицу новое значение «елка».
Теперь удалим значение «береза».
Осуществить задуманное нам помогла «умная таблица», которая легка «расширяется», меняется.
Теперь сделаем так, чтобы можно было вводить новые значения прямо в ячейку с этим списком. И данные автоматически добавлялись в диапазон.
- Сформируем именованный диапазон. Путь: «Формулы» — «Диспетчер имен» — «Создать». Вводим уникальное название диапазона – ОК.
- Создаем раскрывающийся список в любой ячейке. Как это сделать, уже известно. Источник – имя диапазона: =деревья.
- Снимаем галочки на вкладках «Сообщение для ввода», «Сообщение об ошибке». Если этого не сделать, Excel не позволит нам вводить новые значения.
- Вызываем редактор Visual Basic. Для этого щелкаем правой кнопкой мыши по названию листа и переходим по вкладке «Исходный текст». Либо одновременно нажимаем клавиши Alt + F11. Копируем код (только вставьте свои параметры).
- Сохраняем, установив тип файла «с поддержкой макросов».
- Переходим на лист со списком. Вкладка «Разработчик» — «Код» — «Макросы». Сочетание клавиш для быстрого вызова – Alt + F8. Выбираем нужное имя. Нажимаем «Выполнить».
Private Sub Worksheet_Change(ByVal Target As Range) Dim lReply As Long If Target.Cells.Count > 1 Then Exit Sub If Target.Address = "$C$2" Then If IsEmpty(Target) Then Exit Sub If WorksheetFunction.CountIf(Range("Деревья"), Target) = 0 Then lReply = MsgBox("Добавить введенное имя " & _ Target & " в выпадающий список?", vbYesNo + vbQuestion) If lReply = vbYes Then Range("Деревья").Cells(Range("Деревья").Rows.Count + 1, 1) = Target End If End If End If End Sub
Когда мы введем в пустую ячейку выпадающего списка новое наименование, появится сообщение: «Добавить введенное имя баобаб в выпадающий список?».
Нажмем «Да» и добавиться еще одна строка со значением «баобаб».
Выпадающий список в Excel с данными с другого листа/файла
Когда значения для выпадающего списка расположены на другом листе или в другой книге, стандартный способ не работает. Решить задачу можно с помощью функции ДВССЫЛ: она сформирует правильную ссылку на внешний источник информации.
- Делаем активной ячейку, куда хотим поместить раскрывающийся список.
- Открываем параметры проверки данных. В поле «Источник» вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”).
Имя файла, из которого берется информация для списка, заключено в квадратные скобки. Этот файл должен быть открыт. Если книга с нужными значениями находится в другой папке, нужно указывать путь полностью.
Как сделать зависимые выпадающие списки
Возьмем три именованных диапазона:
Это обязательное условие. Выше описано, как сделать обычный список именованным диапазоном (с помощью «Диспетчера имен»). Помним, что имя не может содержать пробелов и знаков препинания.
- Создадим первый выпадающий список, куда войдут названия диапазонов.
- Когда поставили курсор в поле «Источник», переходим на лист и выделяем попеременно нужные ячейки.
- Теперь создадим второй раскрывающийся список. В нем должны отражаться те слова, которые соответствуют выбранному в первом списке названию. Если «Деревья», то «граб», «дуб» и т.д. Вводим в поле «Источник» функцию вида =ДВССЫЛ(E3). E3 – ячейка с именем первого диапазона.
- Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
- Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
- Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.
- На вкладке «Разработчик» находим инструмент «Вставить» – «ActiveX». Здесь нам нужна кнопка «Поле со списком» (ориентируемся на всплывающие подсказки).
- Щелкаем по значку – становится активным «Режим конструктора». Рисуем курсором (он становится «крестиком») небольшой прямоугольник – место будущего списка.
- Жмем «Свойства» – открывается перечень настроек.
- Вписываем диапазон в строку ListFillRange (руками). Ячейку, куда будет выводиться выбранное значение – в строку LinkedCell. Для изменения шрифта и размера – Font.
Выбор нескольких значений из выпадающего списка Excel
Бывает, когда из раскрывающегося списка необходимо выбрать сразу несколько элементов. Рассмотрим пути реализации задачи.
Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range("Е2:Е9")) Is Nothing And Target.Cells.Count = 1 Then Application.EnableEvents = False If Len(Target.Offset(0, 1)) = 0 Then Target.Offset(0, 1) = Target Else Target.End(xlToRight).Offset(0, 1) = Target End If Target.ClearContents Application.EnableEvents = True End If End Sub
Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range("Н2:К2")) Is Nothing And Target.Cells.Count = 1 Then Application.EnableEvents = False If Len(Target.Offset(1, 0)) = 0 Then Target.Offset(1, 0) = Target Else Target.End(xlDown).Offset(1, 0) = Target End If Target.ClearContents Application.EnableEvents = True End If End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("C2:C5")) Is Nothing And Target.Cells.Count = 1 Then
Application.EnableEvents = False
newVal = Target
Application.Undo
oldval = Target
If Len(oldval) <> 0 And oldval <> newVal Then
Target = Target & "," & newVal
Else
Target = newVal
End If
If Len(newVal) = 0 Then Target.ClearContents
Application.EnableEvents = True
End If
End Sub
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
Скачать пример выпадающего списка
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.
Выпадающий список с добавлением новых элементов
Предположим, что у нас есть справочник с именами сотрудников и таблица, куда этих сотрудников нужно вносить:
Задача состоит из двух частей:
- Сделать выпадающий список, причем так, чтобы при дописывании новых людей к справочнику — они автоматически появлялись и в выпадающем списке.
- Реализовать возможность добавления новых людей в список и с другой стороны — при вводе нового имени в любую из жёлтых ячеек оно должно автоматически добавляться к справочнику (и в выпадающий список в будущем, само-собой).
Такая вот двухсторонняя связь справочника и выпадающего списка.
Шаг 1. Создаем умную таблицу
Сначала превратим справочник в «умную» таблицу, чтобы воспользоваться одним из главных её преимуществ — динамической автоподстройкой размеров при добавлении новых данных.
Для этого выделим весь справочник (ячейки A1:A7) и нажмём сочетание клавиш Ctrl+T или выберем Главная — Форматировать как таблицу (Home — Format as Table). В следующем окне можно смело жать ОК:
Шаг 2. Создаем динамический именованный диапазон
Теперь создадим именованный диапазон, указывающий на заполненные именами ячейки в нашем справочнике. Для этого выделим в справочнике уже только имена без шапки (ячейки A2:A7) и в левой части строки формул (там будет имя таблицы) введём имя для нашего диапазона (например Люди):
После ввода имени обязательно нужно нажать на клавишу Enter — слово Люди исчезнет из этого поля, но диапазон будет создан.
Хитрость тут в том, что поскольку мы выделяли столбец уже в «умной» таблице, то и именованный диапазон у нас получился завязанным на колонку [Справочник], а не на конкретные выделенные ячейки. Убедиться в этом можно, если выбрать на вкладке Формулы команду Диспетчер имен (Formulas — Name Manager) и посмотреть куда ссылается имя Люди:
Таким образом, при дописывании новых имен к справочнику будет расширяться наша «умная» Таблица1, а за ней и наш именованный диапазон Люди.
Шаг 3. Создаем выпадающий список в ячейке
Выделяем жёлтые ячейки и жмем на вкладке Данные (Data) кнопку Проверка данных (Data Validation)
Далее выбираем из выпадающего списка Тип данных (Allow) позицию Список (List) и вводим в строку Источник (Source) ссылку на созданный на шаге 1 именованный диапазон (не забудьте перед именем диапазона поставить знак равенства!):
Чтобы Excel позволил нам в будущем ввести в список и новые имена, снимем галочки на вкладках Сообщение для ввода (Input Message) и Сообщение об ошибке (Error Alert) и нажмем ОК. Выпадающий список готов!
Причем, если, например, вручную дописать новое имя в справочник в столбце А, то оно автоматически появится в выпадающем списке в любой из жёлтых ячеек, поскольку имена берутся из динамического диапазона Люди:
Шаг 4. Добавляем простой макрос
Теперь вставим в нашу книгу простой макрос, который будет отслеживать ввод в жёлтые ячейки и при вводе незнакомых людей добавлять их справочнику.
Щёлкаем правой кнопкой мыши по ярлычку нашего листа и выбираем Просмотреть код (View Source). Откроется модуль листа в редакторе Visual Basic, куда надо скопировать такой код:
Private Sub Worksheet_Change(ByVal Target As Range) Set p = Range("Люди") If Target.Cells.Count > 1 Then Exit Sub If IsEmpty(Target) Then Exit Sub If Not Intersect(Target, Range("D2:D10")) Is Nothing Then If WorksheetFunction.CountIf(p, Target) = 0 Then r = MsgBox("Добавить новое имя в справочник?", vbYesNo) If r = vbYes Then p.Cells(p.Rows.Count + 1) = Target End If End If End Sub
Теперь при попытке ввести новое имя в любую из жёлтых ячеек Excel будет спрашивать:
… и при утвердительном ответе пользователя автоматически добавлять новое имя к справочнику и в выпадающий список в дальнейшем.
Ссылки по теме
- 4 способа создать выпадающий список в ячейке листа
- Как создать список из которого будут автоматически удаляться использованные элементы
- Автоматическое создание списка при помощи надстройки PLEX
- Связанные выпадающие списки (от того, что выбрано в первом — зависит содержимое второго)
- Выпадающий список для выбора изображений (фотографий товаров, сотрудников и т.д.)