Объединение даты со строкой в ​​Excel - программирование
Подтвердить что ты не робот

Объединение даты со строкой в ​​Excel

У меня две ячейки в Excel. у одной есть строка, а у другой есть дата. в третьей ячейке я хочу связать дату и строку вместе. Например:

A1 = "This "
A2 = "03/03/1982"

Я хочу, чтобы A3 был:

This 03/03/1982

когда я пытаюсь поместить это в формулу A3: = A1 & A2 возвращает какое-то смешное числовое значение для даты и не дает мне буквальную дату.

4b9b3361

Ответ 1

Не знаю, лучший ли это, но я бы сделал это:

=A1 & TEXT(A2,"mm/dd/yyyy")

Это должно форматировать дату в нужной строке.

Изменить: Это забавное число, которое вы видели, - это количество дней между 31 декабря 1899 года и вашей датой. То, как Excel хранит даты.

Ответ 2

Это числовое представление даты. То, что вы получаете, когда ссылаетесь на даты из таких формул.

Вам нужно будет сделать:

= A1 & TEXT(A2, "mm/dd/yyyy")

Самая большая проблема здесь в том, что спецификатор формата зависит от языка. Он не будет работать/не производить то, что ожидается, если файл открывается с использованием иначе локализованного Excel.

Теперь у вас может быть пользовательская функция:

public function AsDisplayed(byval c as range) as string
  AsDisplayed = c.Text
end function

а затем

= A1 & AsDisplayed(A2)

Но тогда в Excel появляется ошибка (функция?), из-за которой свойство .Text неожиданно не доступно на определенных этапах цикла вычислений, и ваш формулы отображают #VALUE вместо того, что им нужно.

То есть, это плохо в любом случае.

Ответ 3

Другой подход

=CONCATENATE("Age as of ", TEXT(TODAY(),"dd-mmm-yyyy"))

Это вернет Возраст от 06 августа 2013 г.

Ответ 4

Спасибо за решение!

Это работает, но в среде французского Excel вы должны применить что-то вроде

TEXTE(F2;"jj/mm/aaaa")

чтобы сохранить дату, поскольку она отображается в ячейке F2 после конкатенации. С наилучшими пожеланиями

Ответ 5

Вы можете сделать это следующим образом:

A1 = Mahi
A2= NULL (пробел)

Выберите A2 Щелкните правой кнопкой мыши на ячейке → Форматировать ячейки → измените на ТЕКСТ

Затем поместите дату в A2 (A2 = 31/07/1990)

Тогда соедините это будет работать. Нет необходимости в каких-либо формулах.

= СЦЕПИТЬ (А1, А2)

mahi31/07/1990

(Это работает в пустых ячейках, т.е., прежде чем вводить значение DATE в ячейку, вам нужно сделать это как ТЕКСТ).