Excel VBA Right Header устанавливает размер шрифта на 20 - Excel решает, что размер 409 лучше

Я пытаюсь сделать простой макрос, чтобы изменить дату, отображаемую в правом заголовке, на дату «завтра». Когда я пытаюсь установить формат по умолчанию для верхних и нижних колонтитулов на 20, а затем запускаю макрос, Excel меняет размер шрифта на 11. Но когда я указываю в коде VBA изменение на 20, Excel увеличивает размер шрифта до 409! Текущий сценарий, который я использую, выглядит следующим образом:

Sub tomorrow()

Dim today As Date

Dim tomorrow As Date

today = Date

tomorrow = Date + 1

With ActiveSheet.PageSetup

    .DifferentFirstPageHeaderFooter = False
    .RightHeader = "&""Calibri""&20" & Format(tomorrow, "dd/mm/yyyy")
    
End With
End Sub

Может ли кто-нибудь заметить, где я ошибаюсь? Мне просто нужно, чтобы размер шрифта был 20, это кажется таким простым, но я в тупике... Заранее спасибо!

Добавьте пробел после 20, чтобы к нему не добавлялся номер дня.

Rory 19.04.2023 16:21
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
0
1
64
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

"&""Calibri""&20" & Format(tomorrow, "dd/mm/yyyy") эволюционирует в &"Calibri"&2020.04.2020 (конечно, в зависимости от текущей даты). В результате размер шрифта будет читаться как 2020, а поскольку максимальный размер шрифта в Excel составляет 409, вы получите его как размер шрифта вашего заголовка.

Чтобы день не был связан непосредственно с размером шрифта, вы должны просто добавить пробел — это не повредит, так как правый заголовок в любом случае выровнен по правому краю (именно это делает Excel, если вы устанавливаете заголовок вручную).

RightHeader = "&""Calibri""&20 " & Format(tomorrow, "dd/mm/yyyy")

Идеально, большое спасибо! Я знал, что есть какая-то хитрая маленькая деталь, которую я упускаю из виду.

Geoff De Ross 19.04.2023 16:38

Другие вопросы по теме