![]() |
|
![]() |
|
Thread Tools | Display Modes |
|
#1
|
|||
|
|||
![]() It's not clear what you want to to with the numerals, but the following code will remove the gaps in the text and remove the empty paragraphs preceding the numerals: Code:
Sub CleanUpBlankLines() ' Finds paragraph marks and spaces between broken paragraphs and removes them ' Finds empty paragraphs preceding numerals and removes them, too Application.ScreenUpdating = False Dim oRange As Range Set oRange = ActiveDocument.Range With oRange.Find .ClearFormatting .Replacement.ClearFormatting .MatchWildcards = True ' Remove gaps in text: .Text = "([!0-9] )([^13 ]{1,})([!0-9])" .Replacement.Text = "\1\3" .Execute Replace:=wdReplaceAll ' Remove spaces between empty paragraphs, in preparation ' to remove paragraphs preceding numbers: .Text = "(^13)( {1,})(^13)" .Replacement.Text = "\1\3" .Execute Replace:=wdReplaceAll ' Remove empty paragraphs preceding numbers: .Text = "([^13]{2,})([0-9])" .Replacement.Text = "^13\2" .Execute Replace:=wdReplaceAll End With With oRange.Find .ClearFormatting .Replacement.ClearFormatting .MatchWildcards = False End With Set oRange = Nothing Application.ScreenUpdating = True End Sub Last edited by Peterson; 04-19-2022 at 08:29 AM. |
#2
|
|||
|
|||
![]() Quote:
Thank you Mr. Peterson No, Mr. Peterson, I put these numbers in order to know that there are multiple cases of my problem for example, in case 1, there is a single return mark between the broken paragraph in case 2, there are multiple return marks between the broken paragraph and so So the numbers (1,2,3) are just for differentiation of paragraphs (cases) and not included in my text, so I'm sorry for this misunderstanding. |
#3
|
|||
|
|||
![]()
Dear Peterson, after applying your code, I think this portion of your code is not necessary at least according to my case
![]() Quote:
Code:
Sub GapRemoving4Paragraph() ' Finds paragraph marks and spaces between broken paragraphs and removes them Application.ScreenUpdating = False Dim oRange As range Set oRange = ActiveDocument.range With oRange.Find .ClearFormatting .Replacement.ClearFormatting .MatchWildcards = True ' Remove gaps in text: .Text = "([!0-9] )([^13 ]{1,})([!0-9])" .Replacement.Text = "\1\3" .Execute Replace:=wdReplaceAll End With With oRange.Find .ClearFormatting .Replacement.ClearFormatting .MatchWildcards = False End With Set oRange = Nothing Application.ScreenUpdating = True End Sub See attached file |
![]() |
Tags |
word 19, word vba, word vba code |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
a macro to replace paragraph mark with a space applies effect on paragraph marks after the selection | drrr | Word VBA | 2 | 08-24-2021 03:05 AM |
![]() |
Alex1s85 | Mail Merge | 4 | 01-18-2020 11:30 PM |
![]() |
dustnik | Word | 11 | 09-04-2019 12:47 AM |
Add a heading for each paragraph depending on the previous paragraphs numbering | herman | Word | 4 | 07-15-2019 09:48 PM |
![]() |
jrasicmark | Word | 1 | 12-05-2014 01:50 AM |