Объединение нескольких списков с использованием формулы

Объединение нескольких списков с использованием формулы

Я уже задавал очень похожий вопросвопрос здесь, но теперь я хочу делать это автоматически (используя функции и т. д.).

Я бухгалтер и у меня есть два разных листа разных и/или одинаковых счетов. Мне нужно из всех них объединить один общий список (некоторые есть в обоих, но некоторые счета только в одном).Но я хочу сделать это с помощью функций vlookup и if (объединить обе). в настоящее время они выглядят так:

sheet 1:                                         sheet2:  
51100 Employee Salaries                          41000 Purchase of Services 
51100 Employee Salaries Total                    41000 Purchase of Services Total
51110 Employee Salaries, Accrual                 51100 Employee Salaries 
51110 Employee Salaries, Accrual Total           51110 Employee Salaries, Accrual Total
52100 Overtime Pay
52100 Overtime Pay Total

Я хотел бы объединить их, но не иметь дубликатов. Поэтому, чтобы объединить 2 вместе, получим:

41000 Purchase of Services 
41000 Purchase of Services Total
51100 Employee Salaries 
51100 Employee Salaries //should not exist as it's a duplicate                         
51100 Employee Salaries Total                    
51110 Employee Salaries, Accrual                 
51110 Employee Salaries, Accrual Total           
51110 Employee Salaries, Accrual Total //should not exist as it's a duplicate
52100 Overtime Pay
52100 Overtime Pay Total

можно ли как-то объединить "vlookup" для этого и функции "if" - скажем, выполнить vlookup на каждом листе (следующий столбец); появляется #N/A (означает, что на листе 1 такой записи/счета не существует) и затем вставить функцию if в лист 1, где определить: если в ячейке #N/A, записать счет из столбца впереди, если vlokup что-то нашел - записать данные vlookup. И как потом мне это объединить или сделать какое-то решение, чтобы получить то, что я хочу но с использованием формул?

в настоящее время я использую

=IF((VLOOKUP(A2;Sheet2!$A$2:$B$49;1;FALSE))=FALSE;A2;(VLOOKUP(A2;Sheet2!$A$2:$B$49;1;FALSE))) 

но false для if не работает. Обратите внимание, что вместо sheet1 и sheet2 у меня в формуле sheet2 и sheet3

решение1

Предоставленную вами формулу можно записать следующим образом:

=IFERROR(VLOOKUP(A2;Sheet2!$A$2:$B$49;1;FALSE);A2)


Или вот так для пользователей 2003 года и более ранних версий (так как IFERROR был представлен в 2007 году):

=IF(ISERROR(VLOOKUP(A2;Sheet2!$A$2:$B$49;1;FALSE));A2;
    VLOOKUP(A2;Sheet2!$A$2:$B$49;1;FALSE))


РЕДАКТИРОВАТЬ
Самый простой способ создать список, содержащий все уникальные элементы с листов 1 и 2, — это добавить все строки с листа 2 под строки с листа 1, а затем использовать функцию «Удалить дубликаты» на вкладке «Данные», чтобы удалить дубликаты строк.

Если вы запишете макрос, который делает это, вы можете получить начальный код для создания надежного макроса, который поможет сделать эту динамику более динамичной.

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