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

Я бухгалтер и имею два разных листа разных и / или одинаковых аккаунтов. Мне нужно из всех этих объединить один общий список (некоторые находятся в обоих, но некоторые учетные записи только в одном). Но я хочу сделать это с помощью функции 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" для этого и "если" функции, скажем, сделать Vlookup на каждом листе (следующий столбец), появляется # N/A (означает, что в sheet1 такой записи / учетной записи не существует), а затем вставить, если Функция на листе 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))) 

но ложно, если не работает. Обратите внимание, что вместо sheet1 & sheet2 у меня есть sheet2 & sheet3 в формуле

1 ответ1

0

Формула, которую вы предоставили, может быть написана следующим образом:

=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, а затем использовать команду «Удалить дубликаты» на вкладке «Данные», чтобы выделить дубликаты строк.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .