[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

Using VBA in MS/Access to build PowerPoint Slides

Posted on 2009-04-06
4
Medium Priority
?
321 Views
Last Modified: 2013-11-28
I am building a set of PowerPoint using VBA inside Microsoft Access 2003.  I need to know how to tell the PowerPoint object how to place a text box directly under another one.  Problem is, I don't know how big the first text box is because the contents may vary each time I run the code.  Maybe there's a better way to do multi-line text boxes that consist of multiple records from a database recordset.  Is there any way to tell at which X value pixel or screen location you currently are set?  Any assistance would be appreciated.
0
Comment
Question by:rdbrunet
  • 2
4 Comments
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 750 total points
ID: 24081737
0
 
LVL 59

Assisted Solution

by:Chris Bottomley
Chris Bottomley earned 750 total points
ID: 24084241
The following code iterates through all shapes on a slide ... slide 1 as defined but you can as easily increment the limits as you add a shape.

Chris
Dim pptApp As Object
Dim pres As Object
Dim pptSlide As Slide
Dim shp As Shape
Dim lngTop As Long
Dim lngleft As Long
Dim lngBottom As Long
Dim lngright As Long
 
    
    Set pptApp = Application
    Set pres = ActivePresentation
    With pptApp
        With pres
            Set pptSlide = .Slides(1)
            lngleft = pptSlide.Shapes(1).Left
            lngTop = pptSlide.Shapes(1).Top
            For Each shp In pptSlide.Shapes
                If shp.Left < lngleft Then lngleft = shp.Left
                If shp.Top < lngTop Then lngTop = shp.Top
                If shp.Left + shp.Width > lngright Then lngright = shp.Left + shp.Width
                If shp.Top + shp.Height > lngBottom Then lngBottom = shp.Top + shp.Height
            Next
        End With
    End With

Open in new window

0
 

Author Comment

by:rdbrunet
ID: 24092772
Thanks for the feedback.  I actually figured out that if I counted the characters using the LEN() function, I could pre-determine the amount of space I needed to allocate in PowerPoint for the text box shape.  Works like a charm.
0
 

Author Closing Comment

by:rdbrunet
ID: 31567242
These were good pointers although they did not directly address the issue I was experiencing.  Thanks for the feedback.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Instead of error trapping or hard-coding for non-updateable fields when using QODBC, let VBA automatically disable them when forms open. This way, users can view but not change the data. Part 1 explained how to use schema tables to do this. Part 2 h…
Explore the ways to Unlock VBA Project Password Excel 2010 & 2013 documents. Go through the article and perform the steps carefully to remove VBA Excel .xls file.
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…
Suggested Courses

873 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question