Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #5  
Old 08-21-2023, 06:08 AM
Onjai Onjai is offline VBA to cut colored text from one document and paste to another Windows 10 VBA to cut colored text from one document and paste to another Office 2016
Novice
VBA to cut colored text from one document and paste to another
 
Join Date: Aug 2023
Posts: 6
Onjai is on a distinguished road
Default Find Green Text in multiple Word documents

Trying to loop through multiple docs in a folder, cut out green colored text, paste green text to new doc, save both docs in same folder. Code crashes on .Activate. Set statement is empty. Not sure why?


Code:
Sub FindGreenText()
Application.ScreenUpdating = False
Dim oSel As Range
Dim oResponse As Document
Dim oDoc As Document
Dim strDocName As String, strPath As String, strFile As String, strFolder As String

strFolder = "<folder location with doc files>"
strFile = Dir(strFolder & "\*.docx", vbNormal)

Set oDoc = Documents.Open(FileName:=strFolder & " \ " & strFile, AddToRecentFiles:=False, Visible:=True)

While strFile <> ""
    oDoc.Activate 'code stops here with empty set statement
    'DoEvents
    strDocName = Left(oDoc.Name, InStrRev(oDoc.Name, Chr(46)) - 1)
    strDocName = strDocName & "_response.docx"
    strPath = oDoc.Path & Chr(92)
    
    Set sel = ActiveDocument.Range
    Set oResponse = Documents.Add
        With sel.Find
            .ClearFormatting
            .Replacement.ClearFormatting
            .Text = ""
            .MatchWildcards = False
            .Forward = True
            .Wrap = wdFindStop
            .Font.ColorIndex = wdGreen
            .Execute
            Do Until Not .Found
                If sel.Font.ColorIndex = wdGreen Then
                    sel.Cut
                    With oResponse
                        Selection.Range.Paste
                        Selection.MoveStart unit:=wdParagraph
                        Selection.TypeParagraph
                    End With
                End If
                .Execute
            Loop
        End With
    oDoc.SaveAs2
    oResponse.SaveAs2 strPath & strDocName
    oDoc.Close
    oResponse.Close
    strFile = Dir()
Wend
Application.ScreenUpdating = True
MsgBox "Lucy, I'm home!"
End Sub
Reply With Quote
 



Similar Threads
Thread Thread Starter Forum Replies Last Post
VBA to cut colored text from one document and paste to another Copy selected text from one document and paste to new document in same position on the page gasparik Word VBA 1 05-11-2020 05:41 AM
VBA to cut colored text from one document and paste to another Why do pages 10-24 disappear when I type in more text on page 2 or paste new text into the document? RET Word 1 05-02-2016 07:28 PM
VBA to cut colored text from one document and paste to another colored background to text userman Word 2 09-26-2012 01:52 AM
not showing colored text from external emails MasterGator Outlook 0 01-31-2012 02:20 PM
Making text boxes with colored bar at the top daviddoria PowerPoint 0 08-30-2009 03:19 PM

Other Forums: Access Forums

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