Как автоматически заполнить ячейки в Excel на основе другой ячейки

  • Поделись Этим
Hugh West

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

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

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

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

Практическая рабочая тетрадь

Вы можете скачать рабочую тетрадь по практике по ссылке ниже.

Автоматическое заполнение ячеек в Excel на основе другой ячейки.xlsx

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

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

Здесь мы ввели информационные поля, выделенные из исходной таблицы. Допустим, мы установили значение Имя, Роберт .

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

1. использование функции VLOOKUP

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

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

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

Давайте напишем формулу для получения идентификатора сотрудника

=IFERROR(VLOOKUP($I$4,$B$4:$F$9,2,0),"")

В пределах VLOOKUP функции, мы вставили имя ( I4) как lookup_value . Затем весь диапазон таблицы как массив поиска .

Сайт Идентификатор сотрудника является 2-й колонкой, поэтому мы установили 2 в качестве номер_столбца .

Мы использовали IFERROR функцию, чтобы завернуть VLOOKUP Это устранит все ошибки, возникающие в формуле (чтобы узнать об этой функции, посетите статью: IFERROR).

Для получения названия отдела нам необходимо изменить формулу,

=IFERROR(VLOOKUP($I$4,$B$4:$F$9,3,0),"")

Здесь мы изменили номер_столбца в соответствии с положением в исходной таблице. Департамент является 3-й колонкой, поэтому мы использовали 3.

Для Дата присоединения и Адрес, формула будет следующей

=IFERROR(VLOOKUP($I$4,$B$4:$F$9,4,0),"")

И

=IFERROR(VLOOKUP($I$4,$B$4:$F$9,5,0),"")

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

VLOOKUP с выпадающим списком

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

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

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

B4:B9 это диапазон, который содержит имена.

Теперь мы найдем выпадающий список.

Теперь мы можем выбирать имя более эффективно и быстро.

Остальные ячейки заполняются автоматически, так как мы использовали VLOOKUP .

2. использование функции INDEX - MATCH

Операция, которую мы провели через VLOOKUP можно сделать альтернативно. Мы можем использовать комбинацию INDEX-MATCH для автоматического заполнения ячеек.

МАТЧ определяет позицию значения поиска в строке, столбце или таблице. ИНДЕКС возвращает значение в заданном месте диапазона. Чтобы узнать больше, посетите статьи: INDEX, MATCH.

Формула будет следующей

=IFERROR(INDEX($C$4:$C$9,MATCH($I$4,$B$4:$B$9,0)),"")

Здесь наша формула выводит идентификационный номер, поскольку мы указали диапазон идентификаторов в пределах ИНДЕКС и МАТЧ функция выдает номер строки, соответствующей значению критерия в таблице ( B4:B9 ).

Чтобы вывести Департамент мы изменим диапазон в ИНДЕКС и формула будет следующей

=IFERROR(INDEX($D$4:$D$9,MATCH($I$4,$B$4:$B$9,0)),"")

Департаменты находятся в диапазоне D4 на D9 .

Формула для Дата присоединения будет

=IFERROR(INDEX($E$4:$E$9,MATCH($I$4,$B$4:$B$9,0)),"")

И для адреса

=IFERROR(INDEX($F$4:$F$9,MATCH($I$4,$B$4:$B$9,0)),"")

Теперь, чтобы уточнить, давайте сотрем выделение и выберем любое из имен

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

3. Использование функции HLOOKUP

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

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

Для получения id мы будем использовать следующую формулу

=IFERROR(HLOOKUP($C$11,$C$3:$H$7,2,0),"")

Операция аналогична VLOOKUP формула. В рамках HLOOKUP функции, мы указали имя как lookup_value и стол как массив поиска Идентификаторы находятся во втором ряду, поэтому row_num составляет 2. И 0 для точного совпадения.

Теперь, для отдела, формула будет выглядеть следующим образом

=IFERROR(HLOOKUP($C$11,$C$3:$H$7,3,0),"")

Сайт Департамент это 3-й ряд, поэтому row_num 3 здесь.

Давайте напишем формулу для даты присоединения

=IFERROR(HLOOKUP($C$11,$C$3:$H$7,4,0),"")

Сайт Дата присоединения это 4-й ряд, поэтому row_num здесь 4. Затем для адреса измените номер строки на 5.

=IFERROR(HLOOKUP($C$11,$C$3:$H$7,5,0),"")

Давайте сотрем ячейки и выберем имя из выпадающего списка

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

4. INDEX-MATCH для строк

Мы также можем использовать ИНДЕКС МАТЧА комбинацию для строк. Формула будет следующей

=IFERROR(INDEX($C$4:$H$4,MATCH($C$11,$C$3:$H$3,0)),"")

Это нужно для получения идентификатора, поэтому мы использовали C4:H4 в ИНДЕКС функция, которая является Идентификатор сотрудника ряд.

Измените диапазон строк, чтобы найти отдел

=IFERROR(INDEX($C$5:$H$5,MATCH($C$11,$C$3:$H$3,0)),"")

Аналогичным образом измените номер строки для даты присоединения и адреса

=IFERROR(INDEX($C$6:$H$6,MATCH($C$11,$C$3:$H$3,0)),"")

Здесь C6:H6 это Дата присоединения ряд.

И C7:H7 это Адрес строка, поэтому формула для вычисления адреса будет выглядеть так, как указано ниже

=IFERROR(INDEX($C$7:$H$7,MATCH($C$11,$C$3:$H$3,0)),"")

Заключение

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

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.