Maxbester
Maxbester

Reputation: 2533

Word delete blank lines

I would like to clean an auto-generated Word document.

This document contains several tables and there are many blank lines between each of them. I would like to develop a macro that only keeps one blank line between each table.

I don't know if it can be done. Now I'm stuck with:

Dim i As Integer
Dim tTable As Table
For i = 0 To ActiveDocument.Tables.Count
    Set tTable = ActiveDocument.Tables.Item(i)

    ' ???

Next

Any idea?

Upvotes: 0

Views: 749

Answers (1)

Maxbester
Maxbester

Reputation: 2533

I found how to do that:

Dim ParagraphToTrim As Range
Dim tTable As Table
Dim aTables() As Table

Set aTables = ActiveDocument.Tables

For Each tTable In aTables
    ' Supply a Start and End value for the Range.
    Set ParagraphToTrim = ActiveDocument.Range(tTable.Range.Next(Unit:=wdParagraph).Start, tTable.Range.Next(Unit:=wdTable).Start)
    ' Keep at least a paragraph between each table
    If ParagraphToTrim.Paragraphs.Count > 1 Then
        With ParagraphToTrim
            ' Change the start of the range
            .MoveStart Unit:=wdParagraph
            .Delete
        End With
    End If
Next

Upvotes: 1

Related Questions