Копировать информацию в одну ячейку на основе того, что находится в соседней ячейке

Копировать информацию в одну ячейку на основе того, что находится в соседней ячейке

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

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


Например:

Основная электронная таблица:

Column A= Отдел

Column B= Код позиции

Cell A2 "="70600: PACU

Call B2 "="2145

Вторая электронная таблица:

Column E= Отдел

Column F= Код позиции

Cell E2"="(Пустой)← это информация, которую необходимо заполнить из главной таблицы

Cell F2"="2145


Столбец E второй электронной таблицы необходимо заполнить информацией из столбца A основной электронной таблицы на основе кода позиции, указанного в столбце F второй электронной таблицы, совпадающего с кодом позиции в столбце B основной электронной таблицы.

решение1

Введите эту формулу в ячейкуЕ2(вторая электронная таблица):

=INDEX(Sheet1!$A:$A,MATCH(F2,Sheet1!$B:$B,0))

Замените Sheet1на имя вашей основной электронной таблицы.

решение2

Я думаю, что лучшим вариантом будет использовать OFFSETи MATCHвместе.

Базовый OFFSET выглядит так:

 =OFFSET(A1, [numrows], [numcols], [height], [width])

где:

  • A1 — ячейка, от которой производится смещение
  • [numrows] — это количество строк, на которое выполняется смещение (положительное [вниз] или отрицательное [вверх])
  • [numcols] — количество столбцов, на которое необходимо сместиться (положительное [вправо] или отрицательное [влево])
  • [height] — это количество строк, которые вы хотите вернуть. Для одной ячейки используйте 1.
  • [ширина] — это количество столбцов, которые вы хотите вернуть. Для одной ячейки используйте 1.

Базовая функция MATCH, которая возвращает количество ячеек выше или ниже в массиве поиска, где находится заданное искомое значение, выглядит следующим образом:

 =MATCH([lookup],[region],[matchtype])

где:

  • [lookup] — это значение, которое вы хотите найти (в вашем случае это код позиции)
  • [регион] — это область, в которой вам нужно искать
  • [тип соответствия] должен быть 0 для точного соответствия

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

 =OFFSET(Master!A1, MATCH(Second!E2,Master!$B$1:$B$100,0)-1, 0, 1, 1)

Возможно, вам придется подправить MATCH, вычитая 1 (как я сделал выше) в зависимости от того, от какой ячейки вы смещаетесь и от того, где вы начинаете свой массив MATCH.

Связанный контент