View Single Post
 
Old 05-30-2017, 03:13 PM
Edward222 Edward222 is offline Windows 7 64bit Office 2013
Novice
 
Join Date: May 2017
Posts: 1
Edward222 is on a distinguished road
Default Need help with Visual Basic for Presentations to make a Macro

Please help!

At one time I understood basic programing but this Visual Basic for Presentations under Powerpoint is very difficult.

I have Powerpoint 2013 so I do not have a Record macro feature but must use VB to program the changes to all my slides. I have the entire Bible on Powerpoint that I want to make some changes to, so it is too much to do manually.

I want to change the two text boxes on each page. This is what the slides look like now;

Text box 1 is called “Title 1”
Text size = 44
It’s size is
Height = 1.25”
Width = 9
It’s location
Horizontal = .5”
Vertical = .3”

Text box 2 is called “Text Placeholder 2”
Text size = 36
It’s size is
Height = 4.95”
Width = 8.56
It’s location
Horizontal = .68”
Vertical = 1.75”


This is how I want to change it. Basically to change the text font size of both text boxes, move both text boxes to the right half of the page (like in a book), then lastly copy the text box from a previous slide to be the on the left half of the page (so the verses seems to shift to the left) Here is an example.

Text box 1 is called “Title 1”
*Text size = 35
It’s size is
Height = 1.25”
*Width = 4.5”
It’s location
*Horizontal = 5”
Vertical = .3”

Text box 2 is called “Text Placeholder 2”
*Text size = 25
It’s size is
*Height = 5.37”
*Width = 4.42
It’s location
*Horizontal = 5”
*Vertical = 1.33”


I worked at making a Macro to identify the slides with those two text boxes “Title 1” and “Text Placeholder 2”, then to reduce their font size; “Title 1” from 44 to35, and “Text Placeholder 2” from 36 to 25 and the following macro worked to do this;


----------------------------------------------
Sub makehalf()

Dim osld As Slide, oshp As Shape
For Each osld In ActivePresentation.Slides
For Each oshp In osld.Shapes

If oshp.Name = "Title 1" Then

With oshp.TextFrame.TextRange.Font
.Size = 35

End With

End If

If oshp.Name = "Text Placeholder 2" Then

With oshp.TextFrame.TextRange.Font
.Size = 25

End With

End If

Next oshp
Next osld

End Sub

-------------------------------------------------

But now I am trying to identify and actually move and adjust the size of the text boxes on the page, so they will be on the right side, like a book page.

Then lastly, I want to copy the previous slides text boxes and put them on the left side of the page.

Can someone help me?

Thanks in advance.
Reply With Quote