Вставте загальну кількість слайдів у PowerPoint 2007


25

Чи можливо вставити загальну кількість слайдів у презентацію PowerPoint у виноску? Я шукаю автоматизований спосіб.

Звичайно, я міг відредагувати колонтитул і ввести його вручну, але якщо я збільшую / зменшую слайди, потрібно було б його відрегулювати. І це те, що ми завжди забуваємо.

Допомога від Microsoft пояснює , як зробити це вручну. Я не можу повірити, що у PowerPoint цього немає ...


1
Чи опція "вставити> поле" недоступна в Powerpoint? Ось як я це робив словом ...
Seamus

Так, це я шукав. Я новачок у 2007 році, і не можу його знайти.
Боб Ріверс

Так, поля в Powerpoint не існують, тому це не спрацює.
BBlake

4
Наскільки це дратує те, що нам все-таки потрібна надбудова до цієї самої основної функції? У мене ця проблема була роками ...

Відповіді:


2

Якщо ви шукаєте параметр або параметр конфігурації, який автоматично додаватиме його до кожної створеної вами презентації, її немає. Однак якщо ви редагуєте заголовки або колонтитули, ви можете автоматично додавати туди номери слайдів і показувати їх на всіх слайдах.

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


2
Так, це стаття, яку я прочитав. Мені не хочеться ставити "10" вручну. Я шукаю щось на кшталт <#> з <##> ...
Боб Ріверс

1
Ах, добре, так, це спрацює лише в тому випадку, якщо ви просто хочете номер сторінки. Якщо ви хочете "загальної слайди", швидке рішення не існує. Єдине інше, про що я можу придумати, - це використовувати VBA (Visual Basic для додатків) для цього. Я знаю, що це спрацює, але може скластися трохи складніше.
BBlake

@BBlake Ти маєш рацію. Для цього потрібно VBA. Детальну інформацію про те, як це зробити, див. У моїй відповіді .
трейдер

7

Це в основному код pwrpntuser , який поширюється на повне керівництво.

Створення макросу

  1. У PowerPoint 2007 та новіших версіях переконайтеся, що ви зберегли свою презентацію під .pptmрозширенням (дозволена стандартна презентація з макросами).

  2. Переконайтеся, що ви додали номери слайдів, використовуючи метод, описаний у цій статті 1 .

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

  4. Введіть назву макросу (скажімо PageCountUpdater) та натисніть Create.

  5. Вставити код макросу (від pwrpntuser відповіді «s або нижче) між 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 Назви всіх елементів графічного інтерфейсу є перекладом з мого польського видання PowerPoint 2010. В інших випусках або мовних виданнях PowerPoint вони можуть дещо відрізнятися. Відповідно відрегулюйте.


5

Спершу переконайтеся, що кожен слайд має нормальне число. Потім додайте модуль, вставляйте наступний фрагмент коду та натисніть 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

3
Що таке модуль?
Pez Cuckow

Якщо програмно змінити вміст заповнення номера слайда таким чином, номери слайдів більше не оновлюються автоматично, коли ви видаляєте / додаєте / переміщуєте слайди. Я думаю, що це створює більше проблем, ніж це вирішує.
OfficeAddinDev


0

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


Так ... і ця веб-сторінка вже згадується тут, у відповіді старшою на 1,5 року, ніж ваша .
trejder

0

Ось дещо інший код, який оновлює ваш колонтитул на "слайд № # #". Я вирішив не рахувати прихованих слайдів до загальної суми. У мене цей код виконується за допомогою миші над прихованою кнопкою дії на слайді 1.

Dim SlideTotal As Integer
Dim VisibleSlides As Integer
Dim SlideNum As Integer
Dim i As Integer

With ActivePresentation

    SlideTotal = .Slides.Count

    For i = 1 To SlideTotal
        If .Slides(i).SlideShowTransition.Hidden = msoFalse Then
            VisibleSlides = 1 + VisibleSlides
        End If
    Next

    For i = 1 To SlideTotal
        If .Slides(i).SlideShowTransition.Hidden = msoFalse Then
            SlideNum = 1 + SlideNum
            .Slides(i).HeadersFooters.Footer.Visible = msoCTrue
            .Slides(i).HeadersFooters.Footer.Text = "Slide " & SlideNum & " of " & VisibleSlides
        Else
            .Slides(i).HeadersFooters.Footer.Visible = -msoFalse
        End If
    Next

End With

Ласкаво просимо до Супер Користувача. Будь ласка, майте на увазі, що ви відповіли на запитання, якому вже багато років і має прийняту відповідь. Хоча в цьому немає нічого поганого, навряд чи ви отримаєте відповідь.
CharlieRB
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.