Формат даты как год через массив - PullRequest
0 голосов
/ 22 апреля 2020

Я схожу с ума по этому поводу.

Dim myDate As Date
Dim myString As String

myDate = #9/29/1992#
myString = myDate

Range("A1") = myDate 'output: 29/09/1992
Range("A2") = Year(myDate) 'output: 14/06/1905
Range("A3") = Right(myString, 4) 'output: 14/06/1905
Range("A4") = Format(myDate, "yyyy") 'output: 14/06/1905
Range("A5") = Format(myDate, "mm/dd/yyyy") 'output: 29/09/1992

Диапазон («A: A») отформатирован как «Короткая дата», потому что он содержит дату рождения (дд / мм / гггг) ряд предметов. Что происходит, так это то, что я вывожу 1992 в ячейку, отформатированную как Short Date, которая преобразует ее в 14/06/1905.

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

Но как мне отформатировать только те ячейки, у которых есть только год, в число / текст / что-нибудь, что сохраняет его в формате " гггг "?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...