Как обновить диапазон столбцов в Excel

Как обновить диапазон столбцов в Excel

У меня есть таблица Excel, где Id одного листа используется как ссылка на следующий лист. Id последовательны. Вот так:

Sheet 1             Sheet 2     

ID  Name            ID  Sheet_1_ID  Text
1   ABC              1      1       asd
2   XYZ              2      2       dsa
3   PQR              3      2       sadas
4   LMN              4      3       asdas
                     5      3       asd
                     6      4       asd

Теперь по какой-то причине я хочу изменить некоторые идентификаторы из Листа 1 и хочу заменить их на Листе 2. Итак, по сути у меня есть такой список:

OldID NewID  
1      23
2      24
3      25
4      26

Единственный способ, который я нашел, — это использовать функцию Excel «Найти и заменить», но это отнимает много времени.

Есть ли какая-нибудь формула, скрипт или небольшой фрагмент кода, который может этого добиться?

решение1

Если все OldID уникальны, добавьте на каждый лист вспомогательный столбец со следующим содержимым (предполагается, что список OldID/NewID находится на Листе 3, OldID находятся в столбце A, а NewID — в столбце B, а OldID на текущем листе находятся в столбце A, начиная со строки 2):

=VLOOKUP(A2,Sheet3!A:B,2,FALSE)

Фактически это означает: «Возьмите значение в A2 на текущем листе, найдите его в самом левом столбце A:B на Листе3 и верните соответствующее значение во второй столбец A:B на Листе3». Параметр FALSE указывает только на необходимость принимать данные, гдеполное совпадениенайдено для A2. (Да, это противоречит здравому смыслу.)

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

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