Макрос Excel: Как я могу получить метку времени в формате "гггг-ММ-ДД чч:мм:СС"?



Я использую DateTime.Now в моем макро Excel, чтобы показать текущую метку времени.



он показывает метку времени в формате" dd-MM-yyyy hh:mm:ss".



вместо этого, как я могу получить метку времени в формате "гггг-ММ-ДД чч:мм:СС"?

611   8  

8 ответов:

попробуйте с помощью: format(now(), "yyyy-MM-dd hh:mm:ss")

DateTime.Now возвращает значение типа данных Date. Переменные даты отображают даты в соответствии с кратким форматом даты и форматом времени, установленным на вашем компьютере.

они могут быть отформатированы в виде строки для отображения в любом допустимом формате даты с помощью Format функция, как упоминалось в другом ответе

Format(DateTime.Now, "yyyy-MM-dd hh:mm:ss")
Format(Now(), "yyyy-MM-dd hh:mm:ss")

если некоторые пользователи кода имеют разные языковые настройки формат может не работать. Таким образом, я использую следующий код, который дает отметку времени в формате "yyymmdd hhMMss" независимо от языка.

Function TimeStamp()
Dim iNow
Dim d(1 To 6)
Dim i As Integer


iNow = Now
d(1) = Year(iNow)
d(2) = Month(iNow)
d(3) = Day(iNow)
d(4) = Hour(iNow)
d(5) = Minute(iNow)
d(6) = Second(iNow)

For i = 1 To 6
    If d(i) < 10 Then TimeStamp = TimeStamp & "0"
    TimeStamp = TimeStamp & d(i)
    If i = 3 Then TimeStamp = TimeStamp & " "
Next i

End Function

скопируйте и вставьте этот формат гггг-ММ-ДД чч:мм:СС в ячейках формата, нажав таможенную категорию под типом

это сработало лучше всего для меня:

        Cells(partcount + 5, "N").Value = Date + Time
        Cells(partcount + 5, "N").NumberFormat = "mm/dd/yy hh:mm:ss AM/PM"

Он может работать так же легко, как это, Выберите место, которое вы хотите, в этом случае я выбираю D3

Sheets("Put your Sheet's name here").Range("D3") = Now

например, мой лист называется Sources

Sheets("Sources").Range("D3") = Now

используйте функцию форматирования.

Format(Date, "yyyy-mm-dd hh:MM:ss")

Comments

    Ничего не найдено.