Microsoft Office Forums

Go Back   Microsoft Office Forums > >

Reply
 
Thread Tools Display Modes
  #1  
Old 07-15-2019, 05:23 AM
JohnWilson JohnWilson is offline PowerPoint macro to change words between quotes to italic needed Windows 10 PowerPoint macro to change words between quotes to italic needed Office 2016
Programmer
 
Join Date: Nov 2008
Location: UK
Posts: 1,914
JohnWilson has a spectacular aura aboutJohnWilson has a spectacular aura about
Default

Not easy!



Here's a possible start for you to work on if you have multiple quotes in one textframe you will need to work on the pattern.

Code:
Sub regxz()

Dim oMatches As Object
Dim i As Long
Dim otr As TextRange2
Dim osld As Slide
Dim oshp As Shape
Dim regX As Object
Dim strmatch As String
Set regX = CreateObject("VBScript.RegExp")

' this allows for smart curly quotes but do not mix smart and straight
strmatch = "[" & Chr(147) & "," & Chr(34) & "]" & ".*" & "[" & Chr(148) & "," & Chr(34) & "]"
For Each osld In ActivePresentation.Slides
For Each oshp In osld.Shapes
If oshp.HasTextFrame Then
If oshp.TextFrame2.HasText Then Set otr = oshp.TextFrame2.TextRange
On Error Resume Next
With regX
    .Global = True
    .IgnoreCase = True
    .Pattern = strmatch
    Set oMatches = .Execute(otr)
    For i = 0 To oMatches.Count - 1
       otr.Characters(oMatches(i).FirstIndex + 1, Len(oMatches(i).Value)).Font.Italic = True
    Next i
End With
End If
Next oshp
Next osld
End Sub
__________________
Microsoft PowerPoint MVP 2007-2023
Free Advanced PowerPoint Tips and Tutorials
Reply With Quote
  #2  
Old 07-15-2019, 06:51 AM
KarenK13 KarenK13 is offline PowerPoint macro to change words between quotes to italic needed Windows 10 PowerPoint macro to change words between quotes to italic needed Office 2013
Novice
PowerPoint macro to change words between quotes to italic needed
 
Join Date: Jul 2019
Posts: 6
KarenK13 is on a distinguished road
Default

Quote:
Originally Posted by JohnWilson View Post
Not easy!

Here's a possible start for you to work on

Code:
Sub regxz()

Dim oMatches As Object
Dim i As Long
Dim otr As TextRange2
Dim osld As Slide
Dim oshp As Shape
Dim regX As Object
Dim strmatch As String
Set regX = CreateObject("VBScript.RegExp")

' this allows for smart curly quotes
strmatch = "[" & Chr(147) & "," & Chr(34) & "]" & ".*" & "[" & Chr(148) & "," & Chr(34) & "]"
For Each osld In ActivePresentation.Slides
For Each oshp In osld.Shapes
If oshp.HasTextFrame Then
If oshp.TextFrame2.HasText Then Set otr = oshp.TextFrame2.TextRange
On Error Resume Next
With regX
    .Global = True
    .IgnoreCase = True
    .Pattern = strmatch
    Set oMatches = .Execute(otr)
    For i = 0 To oMatches.Count - 1
       otr.Characters(oMatches(i).FirstIndex + 1, Len(oMatches(i).Value)).Font.Italic = True
    Next i
End With
End If
Next oshp
Next osld
End Sub
Hi John,

You are absolutely amazing!!! I spent hours searching the internet and trying macros but I didn't know how to manipulate the code for italic.

This worked perfectly!!! Thanks so much!!!

Karen
Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
Macro needed to copy Powerpoint presentation and sections Marrick13 PowerPoint 0 06-19-2017 07:34 AM
PowerPoint macro to change words between quotes to italic needed Help Needed with Macro to Change Formulas to Text Using Ranges rsrasc Excel Programming 2 11-29-2016 02:31 PM
PowerPoint macro to change words between quotes to italic needed How to replace straight quotes with smart quotes in existing document PABwriter Word 4 05-27-2016 03:36 PM
PowerPoint macro to change words between quotes to italic needed repel Macro vba help is needed for interactive powerpoint. Mrs Blobby PowerPoint 1 04-16-2014 10:58 PM
PowerPoint macro to change words between quotes to italic needed Regular Expressions: match words within quotes? tinfanide Word VBA 3 02-02-2013 10:07 PM

Other Forums: Access Forums

All times are GMT -7. The time now is 06:30 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