1

У меня есть 2 файла Excel, один из них - список рабочих, а другой - список отсутствий. Мне нужно, чтобы причина и дата окончания из списка отсутствий были извлечены в основной список, и поместите его под правильным именем. Сейчас я должен сделать это вручную, но так как в основном списке более 1000 имен, а в списке отсутствий более 800 имен, он очень быстро стареет.

E: Хорошо, давайте попробуем это снова.

Форматирование основного списка:

    A     | B  |    C    |   D    |    E    |      F      |     G     |
Basic unit|Name|Birthdate|Position|Permanent|starting date|ending date|

Отсутствует форматирование:

     A       |  B   |    C      |  D   | E |      F         |    G    |     H         |     I       |     J      
Employee ID# | Unit | Unit name | Name | # | Absence reason | payment | starting date | ending date | length

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

Absence reason, starting date - ending date

быть добавленным в главные списки H2 и вниз на соответствующее имя. Теперь я могу сделать это, добавив дополнительный столбец в список отсутствий, где я объединю необходимую информацию в K2:

=F2&", "& TEXT(A1,"dd/mm/yy")&" - "&TEXT(B1,"dd/mm/yy")

Так что теперь мне нужна формула, которая проверяет, является ли длина> 30, а оплата "безналична".

Кроме того, я финн, что означает, что мой Excel написан на финском языке, а это значит, что я должен управлять формулами через переводчик, в настоящее время я использую http://en.excel-translator.de/translator/

E2: Я отсортировал список отсутствий так, чтобы остались только те, которые мне нужны, поэтому мне не нужно ничего проверять, чтобы просто выбрать и поместить соответствующее имя в основной список.

1 ответ1

1

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

Имя | Дата начала | Дата окончания | Причина отсутствия

Добавьте два столбца на лист сотрудника и используйте vlookup, как это

=iferror(vlookup(A2,[Absences.xls]Sheet1!$A$1:$D$1000,3,false),"")

Это вернет дату окончания, если имя в ячейке A2 можно найти в списке отсутствия. Для причины отсутствия используйте 4 в качестве третьего параметра Vlookup

Изменить: со структурой столбца, представленной в комментарии

     A       |  B   |    C      |  D   | E |      F         |    G    |     H         |     I       |     J      
Employee ID# | Unit | Unit name | Name | # | Absence reason | payment | starting date | ending date | length

и предполагая, что первый столбец находится в столбце A, и предполагая, что столбец Name содержит совпадающие имена, формула для причины отсутствия

=iferror(vlookup(A2,'[the file.xlsx]the sheet'!$D$1:$I$1000,3,false),"")

и на дату окончания

=iferror(vlookup(A2,'[the file.xlsx]the sheet'!$D$1:$I$1000,6,false),"")

Настройте файл и имя листа в соответствии с.

Помните, что Vlookup использует первый столбец таблицы поиска, чтобы найти совпадение, поэтому мы начинаем таблицу поиска в столбце D, который содержит имена. Vlookup работает вправо.

Если вы хотите вернуть данные слева от столбца «Имя», вам потребуется другая формула.

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