Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #2  
Old 03-15-2015, 01:26 AM
gmayor's Avatar
gmayor gmayor is offline How to Re-arrange large field lines in talble Windows 7 64bit How to Re-arrange large field lines in talble Office 2010 32bit
Expert
 
Join Date: Aug 2014
Posts: 4,142
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

Ouch!

Try the following instead. This will work as long as the repeats are as show and there is a multiple of 5 lines in the source.

Code:
Option Explicit

Sub PLR()
'Macro by Graham Mayor 2015
Dim oSource As Document
Dim oTarget As Document
Dim oTable As Table
Dim oRow As Row
Dim oCell As Range
Dim oPara As Range
Dim i As Long
    Set oSource = ActiveDocument
    Set oTarget = Documents.Add
    'Setup the table document
    oTarget.PageSetup.PaperSize = wdPaperLetter
    oTarget.PageSetup.Orientation = wdOrientLandscape
    oTarget.PageSetup.LeftMargin = InchesToPoints(0.35)
    oTarget.PageSetup.RightMargin = InchesToPoints(0.25)
    'Setup the table size
    Set oTable = oTarget.Tables.Add(oTarget.Range, 1, 3)
    With oTable
        .Style = "Table Grid"
        .ApplyStyleHeadingRows = True
        .ApplyStyleLastRow = False
        .ApplyStyleFirstColumn = True
        .ApplyStyleLastColumn = False
        .ApplyStyleRowBands = True
        .ApplyStyleColumnBands = False
        .AllowAutoFit = False
        .Columns(1).SetWidth _
                ColumnWidth:=206, _
                RulerStyle:=wdAdjustNone
        .Columns(2).SetWidth _
                ColumnWidth:=206, _
                RulerStyle:=wdAdjustNone
        .Columns(3).SetWidth _
                ColumnWidth:=338, _
                RulerStyle:=wdAdjustNone
    End With
    On Error GoTo lbl_Exit
    For i = 1 To oSource.Paragraphs.Count Step 5
        Set oRow = oTable.Rows.Last
        Set oPara = oSource.Paragraphs(i).Range
        'Process column 3
        Set oCell = oRow.Cells(3).Range
        oCell.End = oCell.End - 1
        oCell.FormattedText = oPara.FormattedText
        Set oPara = oSource.Paragraphs(i + 3).Range
        oPara.End = oPara.End - 1
        oCell.Collapse 0
        oCell.Text = "Add some text" & vbCr
        oCell.Collapse 0
        oCell.FormattedText = oPara.FormattedText

        'Process column 2
        Set oCell = oRow.Cells(2).Range
        oCell.End = oCell.End - 1
        Set oPara = oSource.Paragraphs(i + 4).Range
        oCell.FormattedText = oPara.FormattedText

        'Process column 1
        Set oCell = oRow.Cells(1).Range
        oCell.End = oCell.End - 1
        Set oPara = oSource.Paragraphs(i + 2).Range
        oCell.FormattedText = oPara.FormattedText
        oCell.Collapse 0
        Set oPara = oSource.Paragraphs(i + 1).Range
        oPara.End = oPara.End - 1
        oCell.FormattedText = oPara.FormattedText
        'If not the end of the list add a row
        'Assumes no blank paragraphs at the end
        If i < oSource.Paragraphs.Count - 4 Then oTable.Rows.Add
        DoEvents
    Next i
    'Format the table
    With oTable
        .Range.Font.name = "Palatino Linotype"
        .Range.Font.Size = 12
        .Range.ParagraphFormat.SpaceAfter = 0
        .Range.LanguageID = wdEnglishUS
    End With
lbl_Exit:
    'Clean up
    Set oSource = Nothing
    Set oTarget = Nothing
    Set oTable = Nothing
    Set oRow = Nothing
    Set oCell = Nothing
    Set oPara = Nothing
    Exit Sub
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
 

Tags
macro, table, word 2010



Similar Threads
Thread Thread Starter Forum Replies Last Post
Extra lines in directroy when field is blank redzan Mail Merge 5 05-23-2014 06:40 PM
Re-Arrange Generated Data flds Excel 4 06-29-2012 08:17 AM
How to Re-arrange large field lines in talble Large amount of text as a form field. JustK Word 2 11-15-2011 11:17 AM
Large gap between lines. Balliol Word 8 12-14-2010 04:59 PM
Text Wrapping on Fixed Lines in a Form field/Table cell okrmjr Word Tables 0 10-30-2009 08:52 AM

Other Forums: Access Forums

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