1

У меня есть 3 поля в Excel следующим образом:

Ячейка A1 = 2012 A2 = 12 A3 = 15, которая содержит год, месяц и дату соответственно. И я хочу сделать из этого строку даты.

Я знаю, что это очень легко сделать с помощью функции Date(). Но я также хочу, чтобы ячейка оставалась пустой, если какой-либо из A1, A2 или A3 пуст.

У кого-нибудь есть формула / логика для этого?

2 ответа2

1

Вы упомянули, что хотите, чтобы ваша функция возвращала строку, помните, что функция DATE() возвращает дату.

Чтобы вернуть дату:

=IF(OR(A1="",A2="",A3=""),"",DATE(A1,B1,C1))

Чтобы вернуть строку:

=IF(OR(A1="",A2="",A3=""),"",TEXT(DATE(A1,B1,C1),"yyyy-MM-dd"))

Вы можете заменить «yyyy-MM-dd» на любой формат отображения даты, который вам нравится.

1

Другой вариант в Excel 2007 или более поздней версии будет использовать эту формулу

=IFERROR((A1&"-"&A2&"-"&A3)+0,"")

Мало того, что будет показано пустое, если любая из 3 ячеек пуста, но также будет отображаться пустое, если у вас была недопустимая дата, например 2012-2-30. Ваша версия будет показывать, что по состоянию на 1 марта

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