Я не знаю, когда был опубликован вопрос; теперь он может быть старым. Итак, я ожидаю, что мой ответ будет скорее справочником для будущих подобных вопросов после моего сообщения.
Я не знаю, дал ли кто-нибудь уже ответ, подобный тому, который я собираюсь дать, что может привести, как я думаю, к самому простому, прямому и наиболее эффективному: если кто-то уже дал его, я прошу прощения , но я этого не видел. Здесь мой ответ с использованием CStr вместо ТЕКСТА:
Предполагаемая ячейка A1 содержит дату и использует код VBA:
Dim strDate As String
'Convert to string the value contained in A1 (a date)
strDate = CStr([A1].Value)
После этого вы можете управлять ею как любой обычной строкой, используя строковые функции (MID, LEFT, RIGHT, LEN, CONCATENATE (&) и т. Д.)