![]() |
|
#20
|
||||
|
||||
|
Based on that sample doc, this code appears to work
Code:
Sub SortParasBySize()
Dim aRng As Range, aTable As Table, aRow As Row
ActiveWindow.View = wdNormalView
With ActiveDocument.Range.Find 'Do Find and Replace for separators
.ClearFormatting
.Replacement.ClearFormatting
.Text = "^p"
.Replacement.Text = "zx"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
.Execute Replace:=wdReplaceAll
.Text = "zxzx"
.Replacement.Text = "^p"
.Execute Replace:=wdReplaceAll
ActiveDocument.Range.ConvertToTable Separator:=wdSeparateByParagraphs, NumColumns:=1
.Text = "zx"
.Replacement.Text = "^p"
.Execute Replace:=wdReplaceAll
End With
Set aTable = ActiveDocument.Tables(1)
aTable.Columns.Add BeforeColumn:=aTable.Columns(1)
For Each aRow In aTable.Rows
aRow.Cells(1).Range.Text = Len(aRow.Cells(2).Range.Text)
Next aRow
aTable.Rows.Add BeforeRow:=aTable.Rows(1)
aTable.SortDescending
aTable.Columns(1).Delete
aTable.Columns.Add 'insert empty column to reinstate extra paras between sections
aTable.Rows(1).Delete
aTable.ConvertToText Separator:=wdSeparateByParagraphs
End Sub
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
| Tags |
| help me, macros, ms word |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
How to automatically enable the macros upon opening a file with macros?
|
laurieli | Office | 7 | 01-17-2016 08:56 AM |
| Can you make templates dynamically update macros/etc. from Normal.DOT? | New Daddy | Word | 2 | 11-18-2013 09:07 AM |
VBA macros
|
tays01s | Word VBA | 6 | 08-03-2011 09:42 PM |
| Macros | nore | Outlook | 0 | 06-01-2011 04:39 PM |
Macros
|
Desertwrangler | Word VBA | 6 | 06-25-2010 07:06 AM |