Как импортировать данные с одного листа на другой

У меня есть два разных рабочих листа в Excel с одинаковыми заголовками во всех ячейках строки 1 (a1 = id, b1 = имя, c1 = цена). Мой вопрос в том, есть ли способ импортировать данные (например, имя) с 1 рабочего листа на другой, где «id» одинаков на обоих листах.

eg.
sheet 1                             sheet2
ID      Name       Price            ID        Name        Price
xyz     Bag        20               abc                     15
abc     jacket     15               xyz                     20

Итак, есть ли способ добавить «Имя» на листе 1 «Имя» на листе 2, где «ID» на листе 1 = «ID» на листе 2?

Без копирования и вставки конечно Спасибо


person Hip Hip Array    schedule 12.04.2011    source источник


Ответы (2)


Виртуальный просмотр

Вы можете сделать это с помощью простой формулы ВПР. Я поместил данные на тот же лист, но вы также можете сослаться на другой лист. Для столбца цены просто измените последнее значение с 2 на 3, поскольку вы ссылаетесь на третий столбец матрицы «A2: C4». Пример ВПР

Внешняя ссылка

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

<Sheetname>!<Cell>

Пример:

Table1!A1

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

[<Workbook_name>]<Sheetname>!<Cell>

Пример:

[MyWorkbook]Table1!A1
person das_weezul    schedule 12.04.2011
comment
Понижение? Почему? Объяснение было бы неплохо, иначе я не знаю, как улучшить свой ответ. - person das_weezul; 12.04.2011
comment
но вы видите, что данные, которые я ввожу, не в том же порядке (у меня есть идентификатор, например, 100168, 101584), и они повсюду, они не в том же порядке на обоих листах. Вот почему мне нужно искать, где идентификатор тот же ...... и, кстати, не я был тем, кто проголосовал против. Я ценю помощь, которую вы оказываете :) - person Hip Hip Array; 12.04.2011
comment
@Niall: Это именно то, что делает ВПР. Я мог бы изменить порядок во второй таблице. Извините, я должен был прояснить это. - person das_weezul; 12.04.2011
comment
@das_weezul: отрицательный голос был за версию Я дам ответ позже. Теперь, когда ответ полезен, я превратил его в +1. - person DarkDust; 12.04.2011
comment
@DarkDust: Спасибо и извините за это, я просто хотел указать Найлу правильное направление, работая над скриншотом ;) - person das_weezul; 12.04.2011
comment
еще раз извините, но как вы ссылаетесь на лист2 при получении данных? - person Hip Hip Array; 12.04.2011

Увидел эту ветку, когда искал что-то еще, и я знаю, что она очень старая, но я хотел добавить свои 2 цента.

НИКОГДА НЕ ИСПОЛЬЗУЙТЕ ВПР. Это одна из худших формул в Excel. Вместо этого используйте соответствие индекса. Он работает даже без сортировки данных, если только у вас нет -1 или 1 в конце формулы соответствия (более подробно объяснено ниже).

Вот ссылка с соответствующими формулами.

Формула для Листа 2 будет следующей: =ЕСЛИ(A2="","",ИНДЕКС(Лист1!B:B,MATCH($A2,Лист1!$A:$A,0)))

  • IF(A2="","", означает, что если A2 пусто, вернуть пустое значение
  • ИНДЕКС(Лист1!B:B, говорит ИНДЕКС B:B, где B:B - это данные, которые вы хотите вернуть. Т.е. столбец имени.
  • Match(A2) сообщает Match A2, который является идентификатором, для которого вы хотите вернуть имя.
  • Sheet1!A:A говорит, что вы хотите сопоставить A2 со столбцом идентификатора на предыдущем листе
  • ,0)) указывает, что вы хотите получить точное значение. 0 означает, что возвращается точное совпадение с A2, -1 означает, что возвращается наименьшее значение, большее или равное A2, 1 означает, что возвращается наибольшее значение, которое меньше или равно A2. Имейте в виду, что -1 и 1 должны быть отсортированы.

Дополнительные сведения об Index/ Соответствие формуле

Другие забавные факты: $ означает абсолют в формуле. Поэтому, если вы укажете $B$1 при заполнении формулы вниз или вверх, сохраните то же значение. Если вы превысите $B1, B останется прежним по всей формуле, но если вы заполните меньше, 1 увеличится с количеством строк. Аналогично, если вы использовали B$1, заполнение справа увеличит B, но сохранит ссылку на строку 1.

Я также включил использование непрямого обращения во второй раздел. Что косвенное делает, так это позволяет вам использовать текст другой ячейки в формуле. Поскольку я создал именованный диапазон sheet1!A:A = ID, sheet1!B:B = Name и sheet1!C:C=Price, я могу использовать имя столбца, чтобы получить точно такую ​​же формулу, но она использует заголовок столбца. изменить критерии поиска.

Удачи! Надеюсь это поможет.

person Katina    schedule 14.12.2015