bottom
Great WordTips!
         
Your e-mail address is safe!
Close Note

Tips.Net > WordTips Home > Formatting > Breaking Lines in E-mail

Breaking Lines in E-mail

Summary: If you are creating an e-mail in Word, or are creating text that you will paste into an e-mail document, you may want to limit the length of each line of that text. This is easy to manually do in short messages, but much more difficult and time consuming in longer messages. The handy macro in this tip can do the tedious work for you, rendering a plain text message with each line no longer than a specific length. (This tip works with Microsoft Word 97, Word 2000, Word 2002, Word 2003, and Word 2007.)

Most e-mail client programs—especially those that use plain text instead of HTML—automatically "break" each line of e-mail at 70 or 72 characters. Fortunately, they do not typically break a line in the middle of a word, but do so at the beginning of the word that reaches the 70- or 72-character mark.

Unfortunately, this can have some adverse effects on e-mail you compose in Word. Some of your lines, when viewed by your recipient, can look strange, breaking at less-than-optimal places and generally looking pretty funky. The solution, of course, is for you to break each line when the appropriate place on the line is reached. This way you can control, ahead of time, how your recipient sees your message.

You can do this manually, if desired, by setting your message margins such that there is only 7 or 7.2 inches of space horizontally. You would then use a 12-point monospace font, such as Courier, to type the message. When a word wraps to the next line, simply backspace to the beginning of the word and press the Enter key.

This could get VERY old VERY fast, even if you send only a moderate amount of e-mail. The better solution is to allow Word to do the breaks for you, yet there does not seem to be such a capability in Word. (You can set up your options in Outlook or Outlook Express to automatically break lines for you, but that doesn't give you as fine a control as doing it directly within Word.)

This brings us to macro territory. You can use the following macro to inspect the current document and automatically "chop up" each paragraph so that no line is over 70 characters in length.

Sub ChopItUp()
    Dim DocThis As Document, docThat As Document
    Dim sParRaw As String
    Dim iParCount As Integer, iParOut As Integer
    Dim J As Long, X As Integer
    Dim iLineWidth As Integer
    Dim sLeft As String, sRight As String
    Dim sTemp As String

    iLineWidth = 70

    Set DocThis = ActiveDocument
    Documents.Add
    Set docThat = ActiveDocument
    DocThis.Activate

    iParCount = DocThis.Paragraphs.Count
    iParOut = 0
    For J = 1 To iParCount
        sParRaw = DocThis.Paragraphs(J).Range.Text
        If Right(sParRaw, 1) = Chr(13) Then
            sParRaw = Left(sParRaw, Len(sParRaw) - 1)
        End If

        sRight = sParRaw
        If Len(sRight) > iLineWidth Then
            While Len(sRight) > iLineWidth
                sLeft = Left(sRight, iLineWidth)
                sRight = Mid(sRight, iLineWidth + 1)
                flgDoIt = True
                If Left(sRight, 1) = " " Then
                    sRight = Mid(sRight, 2)
                    flgDoIt = False
                End If
                If Right(sLeft, 1) = " " Then
                    sLeft = Left(sLeft, Len(sLeft) - 1)
                    flgDoIt = False
                End If

                If flgDoIt Then
                    X = InStr(LTrim(sLeft), " ")
                    If X > 0 Then
                        sTemp = ""
                        While Right(sLeft, 1) <> " "
                            sTemp = Right(sLeft, 1) & sTemp
                            sLeft = Left(sLeft, Len(sLeft) - 1)
                            If Len(sLeft) = 0 Then
                                sLeft = sTemp & " "
                                sTemp = ""
                            End If
                        Wend
                        sRight = sTemp & sRight
                    End If
                    sLeft = Trim(sLeft)
                End If

                docThat.Paragraphs.Add
                docThat.Paragraphs(docThat.Paragraphs.Count).Range = sLeft
                sLeft = ""
                sRight = Trim(sRight)
            Wend
        End If
        docThat.Paragraphs.Add
        docThat.Paragraphs(docThat.Paragraphs.Count).Range = sRight
    Next J
End Sub

When you run this macro, it opens a brand new document and copies the information from the old document to it, making sure that each line is no longer than 70 characters. The new document will not contain any formatting. (Since you are putting together plain-text e-mail, this should not be a problem.) If you want a different line width, all you need to do is change the value assigned to iLineWidth in the macro.

Tip #1336 applies to Microsoft Word versions: 97 | 2000 | 2002 | 2003 | 2007


Create and Merge! Using Word's mail merge tool you can quickly and easily combine data from a variety of data sources to create great individualized documents that incorporate your data in ways that you control. WordTips: Mail Merge Magic is an invaluable source for learning how to harness the full power of Word's mail merging capabilities.
 
Check out WordTips: Mail Merge Magic today!

Helpful Links

Ask a Word Question
Make a Comment

Tips.Net Home
Vital News Home

WordTips FAQ
WordTips Premium

Learn Access Now

Beauty Tips
Bugs and Pests Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Money Tips
Organizing Tips
Pet Tips
Word2007 Tips
WordTips

Advertise on the
WordTips Site

 

Great Info!

Get tips like this every week in WordTips, a free productivity newsletter. Enter your e-mail address and click "Subscribe."
     
(Your e-mail address will never be shared with anyone, ever.)