Как импортировать данные с одного листа на другой - PullRequest
4 голосов
/ 12 апреля 2011

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

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

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

без копинга и вставки конечно Спасибо

Ответы [ 2 ]

9 голосов
/ 12 апреля 2011

ВПР

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

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

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

<Sheetname>!<Cell>

Пример:

Table1!A1

Для ссылки на ячейку другой рабочей книги используйте этот шаблон:

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

Пример:

[MyWorkbook]Table1!A1
6 голосов
/ 15 декабря 2015

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

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

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

Формула Листа 2 будет такой: = IF (A2 = "", "", INDEX (Лист1! B: B, МАТЧ ($ A2, Лист1! $ A: $ A, 0)))

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

Дополнительная информация о Индекс / Совпадение Формула

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

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

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

...