Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #2  
Old 11-09-2023, 05:08 AM
gmaxey gmaxey is offline Convert a word VBA code to PowerPoint VBA code Windows 10 Convert a word VBA code to PowerPoint VBA code Office 2019
Expert
 
Join Date: May 2010
Location: Brasstown, NC
Posts: 1,601
gmaxey is just really nicegmaxey is just really nicegmaxey is just really nicegmaxey is just really nicegmaxey is just really nice
Default

This is not a PowerPoint forum but perhaps:

Code:
Sub FormatByExcel()
'Code by Gregory K. Maxey
Dim xlapp As Object
Dim xlbook As Object
Dim xlsheet As Object
Dim bStartApp As Boolean
Dim varArray As Variant
Dim FD As FileDialog
Dim strSource As String
Dim lngIndex As Long
Dim oSld As Slide
Dim oShp As Shape
Dim oTxtRng As TextRange
Dim oFoundTxt As TextRange
  '**** This is the basically the same as Doug's original code
  Set FD = Application.FileDialog(msoFileDialogFilePicker)
  With FD
    .Title = "Select the workbook that contains the terms to be italicized"
    .Filters.Clear
    .Filters.Add "Excel Workbooks", "*.xlsx"
    .AllowMultiSelect = False
    If .Show = -1 Then
      strSource = .SelectedItems(1)
    Else
      MsgBox "You did not select the workbook that contains the data"
      Exit Sub
    End If
  End With
  On Error Resume Next
  Set xlapp = GetObject(, "Excel.Application")
  If Err Then
    bStartApp = True
    Set xlapp = CreateObject("Excel.Application")
  End If
  On Error GoTo 0
  Set xlbook = xlapp.Workbooks.Open(strSource)
  Set xlsheet = xlbook.Worksheets(1)
  varArray = xlsheet.Range("A1").CurrentRegion.Value
  If bStartApp = True Then xlapp.Quit
  Set xlapp = Nothing
  Set xlbook = Nothing
  Set xlsheet = Nothing
  '****
  '#### Since I don't have your Excel file, this is simply for testing
  ReDim varArray(1)
  varArray(0) = "Apples"
  varArray(1) = "Oranges"
  '####
  '@@@@ I am far from a PowerPoint expert, but a causal Google search turned up something that I could adapt to suit.
  For lngIndex = 0 To UBound(varArray)
    'Loop through each slide in presentation
    For Each oSld In ActivePresentation.Slides
      'Loop through each shape on slide
      For Each oShp In oSld.Shapes
        'Is there text in the shape?
        If oShp.HasTextFrame Then
          Set oTxtRng = oShp.TextFrame.TextRange
          Set oFoundTxt = oTxtRng.Find(FindWhat:=varArray(lngIndex))
          Do While Not (oFoundTxt Is Nothing)
            With oFoundTxt
              .Font.Italic = True
              Set oFoundTxt = oTxtRng.Find(FindWhat:=varArray(lngIndex), After:=.Start + .Length - 1)
            End With
          Loop
        End If
      Next oShp
    Next oSld
  Next lngIndex
lbl_Exit:
  Exit Sub
End Sub
__________________
Greg Maxey
Please visit my web site at http://www.gregmaxey.com/
Reply With Quote
 

Tags
find & replace, power automate, wordvba



Similar Threads
Thread Thread Starter Forum Replies Last Post
Convert a word VBA code to PowerPoint VBA code Convert Text Boxes to Normal Text in Word Using VBA Code laith93 Word VBA 2 03-09-2023 11:51 PM
Convert a word VBA code to PowerPoint VBA code List of ascii code of Character Symbols or code for all symbols used in Word SamDsouza Word VBA 3 03-12-2020 04:49 AM
How I convert formua into VBA code I need help Moot70 Excel Programming 1 10-27-2019 06:15 AM
Convert a word VBA code to PowerPoint VBA code Code to convert numbers to superscript SidCharming Word VBA 2 08-09-2018 08:21 AM
Convert a word VBA code to PowerPoint VBA code VBA code to convert Heading 1, 2, 3 etc. numbering Lady_Laughsalot Word VBA 4 04-18-2018 12:32 AM

Other Forums: Access Forums

All times are GMT -7. The time now is 09:46 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft