Вставьте общее количество слайдов в PowerPoint 2007

Вставьте общее количество слайдов в PowerPoint 2007

Можно ли вставить общее количество слайдов в презентации PowerPoint в сноску? Я ищу автоматизированный способ.

Конечно, я мог бы отредактировать нижний колонтитул и вставить его вручную, но если я буду увеличивать/уменьшать слайды, то его придется настраивать. А это то, о чем мы всегда забываем.

Theпомощь от Microsoftобъясняет, как это сделать вручную. Не могу поверить, что в PowerPoint этого нет...

решение1

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

http://office.microsoft.com/en-us/powerpoint/HA101181931033.aspx

решение2

Это в основномpwrpntuserкодрасширено до полного исполняемого руководства.

Создание макроса

  1. В PowerPoint 2007 и более поздних версиях убедитесь, что вы сохранили презентацию под .pptmрасширением (стандартная презентация с разрешенными макросами).

  2. Убедитесь, что вы добавили номера слайдов, используя описанный метод.в этой статье1 .

  3. Открыть "Макро" окно 2 . В PowerPoint 2007 и более поздних версиях щелкните Viewвкладку (последнюю), а затем Macroкнопку в последней группе панелей инструментов. В более ранних версиях выберите Tools > Macroиз меню.

  4. Введите имя макроса (например PageCountUpdater, ) и нажмите Create.

  5. Вставьте код макроса (изpwrpntuserответили ниже) между Sub PageCountUpdater()и End Sub. Измените vanстроку с самым большим отступом на ofили что-нибудь похожее на вашем языке.

  6. Сохраните макрос и закройте Microsoft Visual Basic для приложений. Вернитесь в PowerPoint.

Готово. Код для вставки (полный и с исправленным "связующим словом"):

Sub PageCountUpdater()
    Dim s As Slide
    Dim shp As Shape

    For Each s In ActivePresentation.Slides
        s.DisplayMasterShapes = True
        s.HeadersFooters.SlideNumber.Visible = msoTrue

        For Each shp In s.Shapes
            If Left(shp.Name, 12) = "Slide Number" Then
                shp.TextFrame.TextRange.Text = s.SlideNumber & " of " & ActivePresentation.Slides.Count
            End If

        Next
    Next
End Sub

Выполнение макроса

  1. Открыть "Макро"снова окно.

  2. Выберите сохраненный PageCountUpdaterмакрос и нажмите Run.

Вам придется делать это каждый раз вручную. Сочетание клавиш было бы весьма кстати. Но... нет способа изменить сочетания клавиш PowerPoint, кроме как купить коммерческий плагин, за который придется заплатить цену, начинающуюся с 20 баксов за один компьютер. См. конецэтотилиэтотстатью для подробностей.

Удаление макроса

Этот макрос запускается только тогда, когда он вам нужен. Это не живой макрос. Он обновляет поле фактическим количеством слайдов и все. Само поле — это стандартное текстовое поле. Никакой магии. Это означает, что вы можете легко преобразовать свой файл обратно .pptxи выбросить этот макрос, как только убедитесь, что ваша презентация готова и вы больше не будете добавлять в нее слайды. Поля останутся на своих местах с нетронутыми значениями после удаления макроса.

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

Это также хорошо, потому что этот макрос воссоздает поля нумерации на всех слайдах (кроме титульных -- см. сноску № 1 в конце), даже если вы удалите их вручную. Поэтому вам следует запустить его в последний раз, после того как вы будете уверены в окончательном количестве и порядке слайдов, и тогда вы сможете удалить его.

Открытие файла с поддержкой макросов

Если вы решите оставить .pptmрасширение и макрос внутри, этот документ будет всегда открываться с отключенными макросами, и вам придется Enable macrosкаждый раз нажимать кнопку (если вы работаете с настройками по умолчанию), чтобы включить их.

Если документы принадлежат вам, вы уверены, что они не содержат вредоносного кода и хранятся в безопасном месте (т. е. не в какой-то временной или общей папке), вы можете изменить настройки каждой программы Office, чтобы эти файлы всегда открывались с включенными макросами.

Самый простой способ — добавить папку с презентациями с поддержкой макросов в защищенное место в PowerPoint.

Сделать это:

  1. Нажмите Fileвкладку, Optionsкнопку, Trust Centerраздел и Trust Center Settingsкнопку.

  2. Перейдите в Trusted locationsраздел (второй) и нажмите Add new location...кнопку.

  3. Вставьте или выберите путь к папке в Pathполе и при желании отметьте, что все подпапки в добавленном расположении также следует считать доверенными.

  4. Нажмите OKтри раза, чтобы подтвердить и закрыть все открытые окна. Откройте документ с поддержкой макросов еще раз.

С этого момента все документы, открытые из только что добавленного местоположения, не должны отображать никаких предупреждений и всегда должны открываться с включенными макросами. Вы найдете гораздо больше подробностей по этому вопросу вэтот документ поддержки Office.com.

Сноски

1 В большинстве версий PowerPoint значениетитульный слайдопределяется не какпервый слайд в презентации, нолюбой слайд, стилизованный под титульный слайд. Вы можете увидеть разные типы слайдов при вставке нового. Это означает, что если у вас нет слайда, оформленного как заголовок, то у вас будут номера страниц, добавленные ко всем слайдам. И наоборот — если вы использовали многотитульные слайдывнутри презентации, например, для обозначения различных разделов или блоков, на всех них будет отсутствовать нумерация.

2 Все названия элементов GUI являются переводом на лету из моего польского издания PowerPoint 2010. В других выпусках или языковых изданиях PowerPoint они могут немного отличаться. Скорректируйте соответствующим образом.

решение3

Сначала убедитесь, что каждый слайд имеет нормальный номер слайда. Затем добавьте модуль, вставьте следующий фрагмент кода и нажмите F5 (Старт).

Dim s As Slide
Dim shp As Shape

For Each s In ActivePresentation.Slides
    s.DisplayMasterShapes = True
    s.HeadersFooters.SlideNumber.Visible = msoTrue

    For Each shp In s.Shapes
        If Left(shp.Name, 12) = "Slide Number" Then
            shp.TextFrame.TextRange.Text = s.SlideNumber & " van " & ActivePresentation.Slides.Count
        End If

    Next
Next

решение4

Я нашел одну веб-страницу, на которой говорилось, что нужно вставить <#> из x в текстовое поле в Мастер-слайде, а затем добавить "номер слайда" к слайду. Я заставил это работать некоторое время, но затем, когда я переместил его и попробовал снова, оно больше не заполняло полный номер слайда в x. Но это решение может быть осуществимым для большинства пользователей.

Связанный контент