Формула Excel в той же книге, но на 3 листах. Необходимо сравнить один столбец на 2 листах и ​​поместить число из 3-го столбца на лист 3.

Формула Excel в той же книге, но на 3 листах. Необходимо сравнить один столбец на 2 листах и ​​поместить число из 3-го столбца на лист 3.

У меня есть 3 листа в книге Excel, я хочу сравнить столбец C из листа 1 со столбцом C листа 2, если где-либо есть такое же число, то я хочу, чтобы значение столбца G из листа 2 было помещено в столбец G на листе 3.

решение1

Допустим, у вас есть лист1:

a b  1
a b  2
a b  3
a b  4
a b  5

И лист2:

a b  6  ... x
a b  2  ... gg
a b  7  ... x
a b  5  ... zz
a b  8  ... x

И так, на листе 3 вы хотите (с или без столбцов A..F)

a b  2  ... gg
a b  5  ... zz

Самое простое решение, но с некоторыми ручными операциями:

Добавьте столбец на листе 2 со следующей формулой (предполагая, что заголовки находятся в строке 1)

=IF(ISERROR(MATCH(C2,Sheet1!$C$2:$C$100000,0)),FALSE,TRUE)

Добавьте фильтр на лист2 и фильтр для значений ИСТИНА. Скопируйте и вставьте на лист3

Используя только формулы (без ручного копирования и вставки):

"Если правда, то копировать" как ФОРМУЛА изначально не существует в Excel. Это потребовало бы, чтобы ячейка с формулой могла изменять значение в другой ячейке (а не только свое собственное значение). Это противоречит тому, как работает электронная таблица, и привело бы ко всем видам отвратительной циклической логики и медленным вычислениям. Вместо этого представьте, что вы вводите формулу в ячейку, в которую хотите скопировать (Лист3!G2...). Эта формула может обращаться к столбцу Лист2!G иссылкаего ценность (но не печатная версия).

Итак, вы можете поместить в Sheet3!G2:

=IF(ISERROR(MATCH(Sheet2!C2,Sheet1!$C$2:$C$100000,0)),"",Sheet2!G2)

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

Чтобы полностью решить эту задачу, используя только формулу, необходимо пронумеровать спички на листе 2 следующим образом:

a b  6  ... x  0
a b  2  ... gg 1
a b  7  ... x  1
a b  5  ... zz 2
a b  8  ... x  2

Используя эту формулу в столбце H Листа 2, начиная с H2:

=IF(ISERROR(MATCH(C2,Sheet1!$C$2:$C$100000,0)),IF(ROW() = 2,0,H1+1), IF(ROW() = 2,1,H1+1))

Затем найдите эти совпадения, используя функции ИНДЕКС, ПОИСКПОЗ и СТРОКА в столбце G листа 3, начиная с G2:

=INDEX(Sheet2!$G$2:$G$100000,MATCH(ROW()-1,Sheet2!$H$2:$H$100000,0))

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