Home » Python » python-pptxの使い方 » python-pptxでノートの文字列を抽出する

python-pptxでノートの文字列を抽出する

動作検証バージョン:Windows 10 + Python 3.7.3 + python-pptx 0.6.18

python-pptxを使うと、PowerPoint VBAよりもシンプルなコードで文字列を抽出できることをご紹介しました。

ノートの文字列抽出も、PowerPoint VBAよりシンプルなコードで済みます。

[スポンサードリンク]

python-pptxでノートの文字列を抽出するサンプル

以下のようなスクリプトで、Cドライブtempフォルダーに存在するfoo.pptxの、ノートの文字列を取得・出力できます。

import pptx

prs = pptx.Presentation('C:\\temp\\foo.pptx')
for i, sld in enumerate(prs.slides, start=1):
    print(f'-- {i} --')
    print(sld.notes_slide.notes_text_frame.text)

python-pptxでノートの文字列を取得する階層構造

python-pptxでスライド毎のノート文字列を取得する場合の、コードとオブジェクトの階層構造は以下のとおりです。

Slide.notes_slideNotesSlideオブジェクトを取得して、
      print(sld.notes_slide.notes_text_frame.text)

NotesSlide.notes_text_frameで、TextFrameオブジェクトを取得して、
      print(sld.notes_slide.notes_text_frame.text)

TextFrame.textを取得しています。
    print(sld.notes_slide.notes_text_frame.text)

PowerPoint VBAでノート文字列を取得する場合

PowerPoint VBAで、Cドライブtempフォルダーに存在するfoo.pptxを開き、ノート文字列をイミディエイトウィンドウに出力する場合、以下のようなSubプロシージャにする必要があります。

Sub sample()
 Dim prs As Presentation
 Set prs = Presentations.Open("C:\temp\foo.pptx")

 Dim sld As Slide, i As Long
 For Each sld In prs.Slides
  i = i + 1
  Debug.Print "--" & i & "--"
  Debug.Print _
    sld.NotesPage.Shapes.Placeholders(2).TextFrame.TextRange.Text
 Next
End Sub

python-pptxより、たくさんのコードを書かなければならないことが一目瞭然です。

最終更新日時:2019-10-29 09:59

[スポンサードリンク]

Home » Python » python-pptxの使い方 » python-pptxでノートの文字列を抽出する

「python-pptxの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.