Microsoft Office Forums

Go Back   Microsoft Office Forums > >

Reply
 
Thread Tools Display Modes
  #1  
Old 03-23-2022, 10:05 PM
gmayor's Avatar
gmayor gmayor is offline Text removal Windows 10 Text removal Office 2019
Expert
 
Join Date: Aug 2014
Posts: 4,144
gmayor has much to be proud ofgmayor has much to be proud ofgmayor has much to be proud ofgmayor has much to be proud ofgmayor has much to be proud ofgmayor has much to be proud ofgmayor has much to be proud ofgmayor has much to be proud ofgmayor has much to be proud of
Default

There is no way to determine whether the words you want to keep are different from the words you want to discard, when both are formatted as US English, as in your example. The only practical solution I can think of is to check against a predefined list, which is the solution adopted below. The error relates to the fact that your current example document has merged cells, which are more difficult to work with. However the following works with your example document. You can add words and/or phrases to the array if your tables have different combinations of strings in the cells.


Code:
Sub Macro1()
Dim vList As Variant
Dim oTable As Table
Dim oCell As Cell
Dim i As Long
Dim oRng As Range
Dim sText As String
Dim bOmit As Boolean

    vList = Array("Goodwill", "Income", "Net Cost", "A") 'The words to ignore when they appear to the left of the '/' character.

    Set oTable = Selection.Tables(1)
    With oTable
        For Each oCell In oTable.Range.Cells
            Set oRng = oCell.Range
            oRng.Case = wdTitleWord
            If InStr(1, oRng.Text, "/") > 0 Then
                sText = Split(oRng.Text, "/")(0)
                If IsNumeric(sText) = False Then
                    bOmit = False
                    For i = 0 To UBound(vList)
                        If CStr(vList(i)) = sText Then
                            bOmit = True
                            Exit For
                        End If
                    Next i
                    If bOmit = False Then
                        oRng.Text = Trim(Split(oRng.Text, "/")(1))
                    End If
                End If
            End If
        Next oCell
    End With
    Set oTable = Nothing
    Set oRng = Nothing
End Sub
__________________
Graham Mayor - MS MVP (Word) (2002-2019)
Visit my web site for more programming tips and ready made processes www.gmayor.com
Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
pst password removal darnero Outlook 1 Yesterday 10:06 PM
Removal of resource calendars? Snoboy Project 0 10-07-2020 12:28 PM
Text removal Removal first 7 typos Chetan Seebra Excel Programming 2 03-31-2015 12:57 PM
Text removal table removal syntax EAGLE SEU Word VBA 5 01-23-2015 10:57 AM
Text removal Field removal from template Phelony Word 1 10-18-2011 03:28 AM

Other Forums: Access Forums

All times are GMT -7. The time now is 06:25 AM.


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