Выравнивание даты и времени в ячейке с помощью кода VBA Excel. Выравнивание даты по левому краю ячейки, а времени — по правому краю.
Выравнивание даты и времени по краям ячейки
Чтобы выровнять дату по левому краю ячейки, а время по правому краю, используйте следующий код VBA Excel:
|
1 2 3 4 5 6 7 |
Sub SetFormatDateTime() With ActiveCell .NumberFormat = "DD.MM.YY * h:mm:ss" ' Задаем формат отображения даты и времени .value = Now() ' Вставляем текущую дату и время .ColumnWidth = 20 ' Устанавливаем ширину ячейки для лучшего отображения End With End Sub |
Результат работы кода:

Пишут, что звёздочка добавляет недостающие пробелы между датой и временем.
При таком форматировании дата и время хранятся в числовом формате и с ними можно проводить математические операции. Функции для работы с датой и временем.
Задать формат даты и времени по краям ячейки можно и вручную с помощью окна «Формат ячеек»:

Между звёздочкой и временем обязательно должен быть пробел.
Размещение даты и времени построчно
Построчное размещение даты и времени в одной ячейке с помощью кода VBA Excel:
|
1 2 3 4 5 6 |
Sub SetDateTimeAsText() With ActiveCell .value = Format(Date, "DD.MM.YY") & Chr(10) & Format(Time, "h:mm:ss") .EntireRow.AutoFit ' Автоподбор высоты строки (обычно работает и без этого) End With End Sub |
Результат работы кода:

При таком форматировании дата и время хранятся в текстовом формате и с ними нельзя проводить математические операции без дополнительных преобразований.