Основываясь на данных ниже, я пытаюсь сделать vlookup таким образом, чтобы, если datetime in заканчивается в 18:59, возвращало значение в column_3, если datetime заканчивается в 6:59, возвращало значение в column_4 ...

10/7/2013 18:59  534    2246
10/7/2013 6:59  2265    2241
10/6/2013 18:59 2265    2070
10/6/2013 6:59  2165    2070
10/5/2013 18:59 2165    2076
10/5/2013 6:59  1599    2076
10/4/2013 18:59 1599    1934
10/4/2013 6:59  1772    1934
10/3/2013 18:59 1772    1972
10/3/2013 6:59  2004    1972
10/2/2013 18:59 2004    2047
10/2/2013 6:59  2034    2047
10/1/2013 18:59 2034    1976
10/1/2013 6:59  2074    1976

Как в мире я это делаю?

1 ответ1

0

Там нет VLOOKUP чтобы сделать здесь. Просто используйте IF и HOUR:

=IF(HOUR(A1)=18, B1, C1)

HOUR возвращает час, как вы уже догадались.

Если может быть больше часов и минут:

=IF(TEXT(A1,"hh:mm")="18:59", B1, IF(TEXT(A1,"hh:mm")="06:59", C1, "")

TEXT возвращает текстовую версию предоставленного формата, здесь я использовал hh:mm .


Согласно новой информации в комментарии:

Я не уверен, потому что это не так ясно, но общая формула может быть:

=VLOOKUP(A1, 'Pathname[Filename]Sheetname'!A:D, IF(MOD(A1,1)>0.5, 3, 4), 0)

MOD(A1,1) дает дробь даты. Если дата была полдень, она вернется 0,5. Если время этой даты - 18:59, оно вернет значение выше 0,5, а в 6:59 - значение ниже 0,5.

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