I am using the python pptx module to automatically update values in a powerpoint file. I am able to extract all the text in the file using the code below:
from
This works for me:
def access_table():
slide = prs.slides[0] #first slide
table = slide.shapes[2].table # maybe 0..n
for r in table.rows:
s = ""
for c in r.cells:
s += c.text_frame.text + " | "
#to write
#c.text_frame.text = "example"
print s
Your code will miss more text than just tables; it won't see text in shapes that are part of groups, for example.
For tables, you'll need to do a couple things:
Test the shape to see if the shape's .HasTable property is true. If so, you can work with the shape's .Table object to extract the text. Conceptually, and very aircode:
For r = 1 to tbl.rows.count
For c = 1 to tbl.columns.count
tbl.cell(r,c).Shape.Textframe.Text ' is what you're after