Wstaw całkowitą liczbę slajdów do programu PowerPoint 2007


25

Czy można wstawić do przypisu całkowitą liczbę slajdów w prezentacji PowerPoint? Szukam zautomatyzowanego sposobu.

Oczywiście mógłbym edytować stopkę i wstawić ją ręcznie, ale jeśli zwiększam / zmniejszam slajdy, konieczne będzie jej dostosowanie. I o tym zawsze zapominamy.

Pomoc od Microsoft wyjaśnia, jak to zrobić ręcznie. Nie mogę uwierzyć, że PowerPoint go nie ma ...


1
Czy opcja „wstaw> pole” nie jest dostępna w programie PowerPoint? Tak właśnie robiłem to słowem ...
Seamus,

Tak, tego szukałem. Jestem nowy w 2007 roku i nie mogę go znaleźć.
Bob Rivers

tak, pola nie istnieją w Powerpoint, więc to nie zadziała.
BBlake,

4
Jak denerwujące jest to, że wciąż potrzebujemy dodatku do tej bardzo podstawowej funkcji? Mam ten problem od lat ...

Odpowiedzi:


2

Jeśli szukasz opcji lub ustawienia konfiguracji, które automatycznie dodadzą ją do każdej tworzonej prezentacji, nie ma takiej. Jeśli jednak edytujesz nagłówek lub stopkę, możesz automatycznie dodawać tam numery slajdów i wyświetlać je na wszystkich slajdach.

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


2
Tak, to jest artykuł, który czytam. Nie chcę ręcznie ustawiać „10”. Szukam czegoś w rodzaju <#> z <##> ...
Bob Rivers

1
Ahh, ok, tak, działałoby to tylko, jeśli chcesz tylko numer strony. Jeśli chcesz „wszystkich slajdów”, nie ma szybkiego rozwiązania. Jedynym innym rozwiązaniem, jakie mogę wymyślić, jest użycie VBA (Visual Basic for Applications) do osiągnięcia tego celu. Wiem, że to zadziała, ale może się nieco skomplikować.
BBlake,

@BBlake Masz rację. Aby to osiągnąć, wymagany jest VBA. Zobacz moją odpowiedź, aby dowiedzieć się, jak to zrobić.
trejder

7

Jest to w zasadzie kod pwrpntuser rozszerzony do pełnego przewodnika wykonywalnego.

Tworzenie makra

  1. W programie PowerPoint 2007 i nowszych upewnij się, że zapisałeś prezentację jako .pptmrozszerzenie (standardowa prezentacja z makrami dozwolona).

  2. Upewnij się, że dodałeś numery slajdów za pomocą metody opisanej w tym artykule 1 .

  3. Otwórz okno „ Makro2 . W programie PowerPoint 2007 i nowszych kliknij Viewkartę (ostatnia), a następnie Macroprzycisk w ostatniej grupie pasków narzędzi. W wersjach Eariler wybierz Tools > Macroz menu.

  4. Wpisz nazwę swojego makra (powiedzmy PageCountUpdater) i kliknij Create.

  5. Wklej kod makro (od pwrpntuser odpowiedź „s lub poniżej) pomiędzy Sub PageCountUpdater()i End Sub. Zmień vanlinię najbardziej wciętą na oflub coś podobnego na twoim języku.

  6. Zapisz makro i zamknij Microsoft Visual Basic for Applications. Wróć do PowerPoint.

Jesteś skończony. Kod do wstawienia (pełny i z poprawionym „słowem kleju”):

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

Wykonywanie makra

  1. Ponownie otwórz okno „ Makro ”.

  2. Wybierz zapisane PageCountUpdatermakro i naciśnij Run.

Musisz to zrobić za każdym razem ręcznie. Skrót klawiaturowy byłby bardzo mile widziany. Ale ... nie ma sposobu, aby zmienić skróty programu PowerPoint, z wyjątkiem zakupu komercyjnej wtyczki, za którą trzeba zapłacić cenę od 20 dolarów za jeden komputer. Szczegółowe informacje można znaleźć na końcu tego lub tego artykułu.

Usuwanie makra

To makro jest uruchamiane tylko wtedy, gdy jest potrzebne. To nie jest makro na żywo. Aktualizuje pole o rzeczywistą liczbę slajdów i to wszystko. Samo pole jest standardowym polem tekstowym. Bez magii. Oznacza to, że możesz łatwo przekonwertować plik z powrotem .pptxi wyrzucić to makro, gdy masz pewność, że prezentacja jest zakończona i nie będziesz już dodawać do niej slajdów. Pole pozostanie na swoich miejscach z nietkniętymi wartościami po usunięciu makra.

Jest to wygodne, ponieważ wielu użytkowników nie lubi dokumentów z makrami i wielu miejsc prezentacji, targów, konferencji itp. Po prostu nie pozwala na uruchamianie .pptmplików.

Jest to również dobre, ponieważ to makro odtwarza pola numeracji na wszystkich slajdach (z wyjątkiem tych tytułowych - patrz przypis nr 1 na końcu), nawet jeśli usuniesz je ręcznie. Dlatego powinieneś uruchomić go po raz ostatni, po upewnieniu się co do ostatecznej liczby i kolejności slajdów, a następnie możesz go usunąć.

Otwieranie pliku z obsługą makr

Jeśli zdecydujesz się zachować .pptmrozszerzenie i makro wewnątrz, ten dokument będzie zawsze otwarty z wyłączonymi makrami i będziesz musiał za Enable macroskażdym razem klikać (jeśli uruchomisz na ustawieniach domyślnych), aby je włączyć.

Jeśli dokumenty są twoje, masz pewność, że nie zawierają złośliwego kodu i wszystkie są przechowywane w bezpiecznej lokalizacji (tj. Nie w folderze tymczasowym lub udostępnionym), możesz zmienić ustawienia każdego programu pakietu Office, aby zawsze otwierać te pliki za pomocą makra włączone.

Najłatwiej jest dodać folder z prezentacjami z włączoną obsługą makr, aby zabezpieczyć lokalizacje w programie PowerPoint.

Aby to zrobić:

  1. Kliknij Filekartę, Optionsprzycisk, Trust Centersekcję i Trust Center Settingsprzycisk.

  2. Przejdź do Trusted locationssekcji (druga) i kliknij Add new location...przycisk.

  3. Wklej lub wybierz ścieżkę folderu do Pathpola i opcjonalnie sprawdź, czy wszystkie podfoldery w dodanej lokalizacji również powinny być traktowane jako zaufane.

  4. Kliknij OKtrzy razy, aby potwierdzić i zamknąć wszystkie otwarte okna. Ponownie otwórz dokument z obsługą makr.

Od tego momentu wszystkie dokumenty otwierane z właśnie dodanej lokalizacji nie powinny wyświetlać żadnych ostrzeżeń i zawsze powinny być otwierane z włączonymi makrami. Więcej informacji na ten temat znajdziesz w tym dokumencie pomocy technicznej Office.com .

Przypisy

1 W większości wersji PowerPoint slajd tytułowy jest określany nie jako pierwszy slajd prezentacji , ale jak każdy slajd stylizowany jako slajd tytułowy . Podczas wstawiania nowego można zobaczyć różne typy slajdów. Oznacza to, że jeśli nie masz slajdu w stylu tytułu, do wszystkich slajdów zostaną dodane numery stron. I odwrotnie - jeśli użyłeś wielu slajdów tytułowych w prezentacji, na przykład do oznaczenia różnych sekcji lub bloków, na wszystkich z nich nie będzie numeracji.

2 Nazwy wszystkich elementów GUI są tłumaczeniem w locie z mojego polskiego wydania PowerPoint 2010. W innych wydaniach lub wersjach językowych PowerPoint mogą się one nieco różnić. Odpowiednio wyreguluj.


5

Najpierw upewnij się, że każdy slajd ma normalny numer. Następnie dodaj moduł, wstaw następujący fragment kodu i naciśnij F5 (Start).

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
Co to jest moduł?
Pez Cuckow

Gdy w ten sposób programowo zmienisz zawartość symbolu zastępczego numeru slajdu, numery slajdów nie będą już automatycznie aktualizowane po usunięciu / dodaniu / przeniesieniu slajdów. Myślę, że to stwarza więcej problemów niż rozwiązuje.
OfficeAddinDev,


0

Znalazłem jedną stronę internetową, która mówi, że umieściłeś <#> x w polu tekstowym na Slajdzie głównym, a następnie dodałeś „numer slajdu” do slajdu. Sprawiłem, że działa krótko, ale kiedy go przesunąłem i spróbowałem ponownie, nie wypełnia on już pełnego numeru slajdu w x. Ale to rozwiązanie może być wykonalne dla większości użytkowników.


Tak ... i ta strona jest już wspomniana tutaj, w odpowiedzi starszej o 1,5 roku od twojej .
trejder

0

Oto nieco inny kod, który aktualizuje stopkę za pomocą „slajdu # z ##”. Zdecydowałem się nie wliczać ukrytych slajdów do sumy. Mam ten kod uruchamiający się z myszy nad ukrytym przyciskiem akcji na slajdzie 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

Witamy w Super User. Informujemy, że odpowiedziałeś na pytanie, które ma wiele lat i zostało zaakceptowane. Chociaż nie ma w tym nic złego, jest mało prawdopodobne, że dostaniesz odpowiedź.
CharlieRB
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.