Использование Excel VBA для изменения формата даты и времени верхних и нижних колонтитулов в PowerPoint - PullRequest
0 голосов
/ 10 апреля 2020

У меня сейчас есть следующие настройки. Все работает нормально, за исключением того, что .DateAndTime.Format не меняет формат даты в нижнем левом углу слайда. Дата видна как 4/10/2020, но я не могу изменить ее на 10 апреля 2020 года, используя следующую информацию:

  Set PowerPointApp = GetObject(class:="PowerPoint.Application")
  Set myPresentation = PowerPointApp.Presentations.Add
    myPresentation.ApplyTemplate "[template file here]"
  Const ppSlideSizeA4Paper = 2
    myPresentation.PageSetup.SlideSize = ppSlideSizeA4Paper
  With myPresentation.SlideMaster.HeadersFooters

    .SlideNumber.Visible = True
    .DateAndTime.Visible = True
    .DateAndTime.UseFormat = True
    .DateAndTime.Format = ppDateTimeMMMMdyyyy

  End With

1 Ответ

1 голос
/ 10 апреля 2020

Я думаю, что вы нашли ошибку, потому что VBA не будет изменять формат даты на главном или его дочерних макетах. На слайдах можно установить:

Sub DateTime()
    Dim oSlide As Slide
    For Each oSlide In ActivePresentation.Slides
        With oSlide.HeadersFooters
            .SlideNumber.Visible = True
            With .DateAndTime
                .Format = ppDateTimeMMMMdyyyy
                .Visible = msoTrue
            End With
        End With
    Next oSlide
End Sub

Однако при вставке нового слайда дата все равно будет отражать формат, установленный на макете, и вам придется повторно запускать макрос.

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