web-dev-qa-db-ja.com

PowerPoint 2007にスライドの総数を挿入する

PowerPointプレゼンテーションのスライドの合計量を脚注に挿入することはできますか?自動化された方法を探しています。

もちろん、フッターを編集して手動で挿入することもできますが、スライドを増減する場合は、調整する必要があります。そして、これは私たちがいつも忘れていることです。

Microsoftからのヘルプ は、手動で行う方法を説明しています。 PowerPointにそれがないとは信じられない...

25
Bob Rivers

作成するすべてのプレゼンテーションに自動的に追加されるオプションまたは構成設定を探している場合、それはありません。ただし、ヘッダーまたはフッターを編集すると、そこにスライド番号を自動的に追加して、すべてのスライドに表示することができます。

http://office.Microsoft.com/en-us/PowerPoint/HA101181931033.aspx

2
BBlake

これは基本的に pwrpntuserのコード 完全な実行可能ガイドに拡張されています。

マクロを作成しています

  1. PowerPoint 2007以降では、プレゼンテーションを_.pptm_拡張子(マクロが許可された標準のプレゼンテーション)で保存したことを確認してください。

  2. 説明されている方法を使用してスライド番号を追加したことを確認してください この記事で1

  3. マクロ」ウィンドウを開く 2。 PowerPoint 2007以降では、Viewタブ(最後)をクリックし、最後のツールバーグループのMacroボタンをクリックします。以前のバージョンでは、メニューから_Tools > Macro_を選択します。

  4. マクロの名前(PageCountUpdaterなど)を入力し、Createをクリックします。

  5. Sub PageCountUpdater()と_End Sub_の間にマクロコード( pwrpntuserの回答 以下)を貼り付けます。最もインデントされた行のvanofまたはlangで類似したものに変更します。

  6. マクロを保存し、Microsoft Visual Basic for Applicationsを閉じます。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. Macro」ウィンドウを再度開きます。

  2. 保存されたPageCountUpdaterマクロを選択し、Runを押します。

これは毎回手動で行う必要があります。キーボードショートカットは大歓迎です。しかし... PowerPointのショートカットを変更する方法はありません。ただし、市販のプラグインを購入する場合を除き、1台のコンピューターあたり20ドルから購入する必要があります。詳細は this または this の記事の最後を参照してください。

マクロを削除しています

このマクロは、必要なときにのみ実行されます。ライブマクロではありません。実際のスライド数でフィールドを更新します。それだけです。フィールド自体は標準のテキストフィールドです。魔法はありません。これは、ファイルを_.pptx_に簡単に変換し直して、このマクロを破棄できることを意味します。確信が持てれば、プレゼンテーションが終了し、スライドを追加する必要はありません。マクロが削除されると、フィールドはそのままの値でそのまま残ります。

多くのユーザーがマクロや多くのプレゼンテーション場所、見本市、会議などのドキュメントを好まないので、これは快適です。単に_.pptm_ファイルを実行させないでしょう。

このマクロは、手動で削除した場合でも、すべてのスライド(タイトルを除く-末尾の脚注1を参照)の番号付けフィールドを再作成するため、これも良い方法です。したがって、スライドの最終的な数と順序がわかったら、最後にもう一度実行して、スライドを削除できます。

マクロが有効なファイルを開く

_.pptm_拡張機能とマクロを内部に保持する場合は、このドキュメントを常にマクロを無効にして開き、有効にするために毎回(デフォルト設定で実行する場合)_Enable macros_をクリックする必要があります。それら。

ドキュメントが自分のものであり、信頼でき、悪意のあるコードが含まれておらず、すべて安全な場所(一時フォルダーや共有フォルダーではない)に保存されている場合、これらのファイルを常に開くように各Officeプログラムの設定を変更できます。マクロを有効にしました。

最も簡単な方法は、マクロが有効なプレゼンテーションを含むフォルダーをPowerPointの安全な場所に追加することです。

これをする:

  1. Fileタブ、Optionsボタン、_Trust Center_セクション、および_Trust Center Settings_ボタンをクリックします。

  2. _Trusted locations_セクション(2番目)に移動し、_Add new location..._ボタンをクリックします。

  3. Pathフィールドにフォルダーパスを貼り付けるか選択し、オプションで、追加された場所にあるすべてのサブフォルダーも信頼できるものとして扱う必要があることを確認します。

  4. OKを3回クリックして、開いているすべてのウィンドウを確認して閉じます。マクロが有効なドキュメントを再度開きます。

この時点から、追加した場所から開いたすべてのドキュメントは警告を表示せず、常にマクロを有効にして開く必要があります。この問題の詳細については、 このOffice.comサポートドキュメント を参照してください。

脚注

1PowerPointのほとんどのバージョンでは、意味タイトルスライドプレゼンテーションの最初のスライドではなく、タイトルスライドとしてスタイル設定されたスライド。新しいスライドを挿入すると、異なるスライドタイプを確認できます。つまり、タイトルとしてスタイル設定されたスライドがない場合、すべてのスライドにページ番号が追加されます。反対に、たとえば、異なるセクションまたはブロックをマークするために、プレゼンテーション内で多くのタイトルスライドを使用した場合、それらすべてで番号付けが失われます。

2すべてのGUI要素の名前は、PowerPoint 2010のポーランド語版からのオンザフライの翻訳です。PowerPointの他のリリースまたは言語版では、若干異なる場合があります。適宜調整してください。

7
trejder

最初に、すべてのスライドに通常のスライド番号があることを確認します。次にモジュールを追加し、次のコードを挿入して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
5
pwrpntuser

Bill Dilworthのアドイン PowerPointは、使用しているPowerPointのバージョンによっては役立つ場合があります。これがまさにその目的です。

3
mpez0

<#>のxをマスタースライドのテキストボックスに入力し、「スライド番号」をスライドに追加するというWebページが見つかりました。簡単に機能しましたが、移動してもう一度試したところ、スライド番号全体がxに入力されなくなりました。しかし、このソリューションはほとんどのユーザーにとって実現可能かもしれません。

0
Michelle

これは、フッターを「slide#of ##」で更新するわずかに異なるコードです。非表示のスライドは合計に含めないことにしました。スライド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
0
Chris Sandlin