Selecting and deleting multiple table rows at the same time with V

I

Iorav Marz

Hello,

I would like to select multiple rows of a table in PowerPoint and then
delete these rows. In the past, I have used code that deletes rows one at a
time. However, I am applying this code on many tables over 100 slides and
recursively cycling through rows one by one is very slow.

Is there a way to modify the code to perform the delete operation all at once?

With ActiveWindow.Selection.ShapeRange(1).Table

For Z = 2 To 10
..Rows(Z).Delete
Next
End With

Ideally, I was hoping that the .rows(Z) property could be modified to
include a range of rows instead of just a single row. Something like
..rows("2:10") although that doesn't seem to work.

Thanks.
 
I

Iorav Marz

Hi- yes, the operation must be performed on a selected table. I've actually
already disabled the screen updates (which helped speed things up), but the
individual deletion of rows is still incredibly slow given the number of rows
and tables.

Any way to delete the rows at the same time? I think in Excel it is possible
but is it not in PowerPoint?
 
I

Iorav Marz

Actually, the full code I am using has variables in place for "2" and "10"...
it really depends on the table. I put in "2-10" to simplify the example.

So does anyone know a way of deleting these rows at the same time?

Thanks.
 
I

Iorav Marz

Hi Steve and thanks for the help. The macro runs through all tables in the
PowerPoint presentation and deletes rows based on their position on the
slide. Once the macro is finished with a tables, it then moves to the next
slide and performs the operation on the next table. It continues doing this
until it reaches the end of the presentation.

Could you please expand on your recommendation to "storing a reference to
the table in a variable then deselecting it" and "do your work on the
unselected table, then reselect it if need be"? I'm unclear as to how that
will help me in this case.

I've isolated the row deletion portion of the macro because it is the one
piece of code that is significantly slowing it down. If anyone could identify
a way to delete rows on a table at the same time rather than cycling through
them individually, I would greatly appreciate it!
 
I

Iorav Marz

Hi Steve,

Actually the macro already works on unselected tables... the part that is
really slowing it down is the individual deletion of rows.

Could there be a way to delete these rows at the same time through VBA?
Since I can manually select multiple rows in a PowerPoint table, right click
on the table rows, and select "Delete Rows", I was hoping there was a way to
do this through VBA as well.

Thanks.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top