VBA macro examples to insert text into a document in Word 2000

This article was previously published under Q212682
This article has been archived. It is offered "as is" and will no longer be updated.
For a Microsoft Word 98 Macintosh Edition version of this article, see 183866.
For a Microsoft Word 97 version of this article, see 161407.
SUMMARY
This article provides several Visual Basic for Applications macro examplesthat use the Selection property and the Range object to insert text into adocument.
MORE INFORMATION
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

Using the Selection object and the TypeText method

Inserts the specified text. If the ReplaceSelection property is True, theselection is replaced by the specified text. If ReplaceSelection propertyis False, the specified text is inserted before the selection.

For more information about ReplaceSelection Property, in the Visual Basic Editor, click Microsoft Visual Basic Help on the Help menu, type ReplaceSelection Property in the Office Assistant or the Answer Wizard, and then click Search to view the topic.
Sub TypeTextMethod()  Dim MyText As String  MyText = "<Replace this with your text>"  Selection.TypeText (MyText)End Sub				

Using the Range object

The following example replaces the entire contents of a document with theword "Replaced" regardless of the current position of the insertion point.

Sub RangeProperty()  ' Range Example:  ActiveDocument.Range.Text = "Replaced"End Sub				

Using Range or Selection object with the InsertAfter/InsertBefore method

InsertAfter method example:

Inserts the specified text at the end of a range or selection.
Sub InsertAfterMethod()  Dim MyText As String  Dim MyRange As Object  Set MyRange = ActiveDocument.Range  MyText = "<Replace this with your text>"  ' Selection Example:  Selection.InsertAfter (MyText)  ' Range Example:  ' (Inserts text at the current position of the insertion point.)  MyRange.Collapse  MyRange.InsertAfter (MyText)End Sub				
InsertBefore method example:

Inserts the specified text at the beginning of a range or selection. Afterthis method is applied, the range or selection expands to include the newtext.
Sub InsertBeforeMethod()   Dim MyText As String   Dim MyRange As Object   Set MyRange = ActiveDocument.Range   MyText = "<Replace this with your text>"   ' Selection Example:   Selection.InsertBefore (MyText)   ' Range Example: Inserts text at the beginning   ' of the active document.   MyRange.InsertBefore (MyText)End Sub				

Inserting a comment into a document using the Range or Selection object

Inserts a comment at the current position of the insertion point.
Sub CommentsCollectionObject()   Dim MyText As String   Dim MyRange As Object   Set MyRange = ActiveDocument.Range   MyText = "<Replace this with your text>"  ' Selection Example:  Selection.Comments.Add Range:=Selection.Range, Text:=MyText  ' Range Example:  MyRange.Comments.Add Range:=Selection.Range, Text:=MyTextEnd Sub				

Inserting a field into a document using the Range or Selection object

Inserts a field at the current position of the insertion point.
Sub FieldsCollectionObject()   Dim MyText As String   Dim MyRange As Object   Set MyRange = Selection.Range   MyText = "<Replace this with your text>"   ' Selection Example:   Selection.Fields.Add Range:=Selection.Range, _      Type:=wdFieldQuote, Text:=MyText   ' Range Example:    Range.Fields.Add Range:=Selection.Range, _      Type:=wdFieldQuote, Text:=MyTextEnd Sub				
This example inserts a formula field. The result is formatted with a dollarsign.

Sub InsertFormulaMethod()   Selection.InsertFormula Formula:="=100,000.0-45,000.0", _      NumberFormat:="$#,##0.0"End Sub				

Replicating the text, including the format, of a text range

This property returns a Range object with the character formatting and text from the specified range or selection. Paragraph formatting is included in the Range object if there is a paragraph mark in the range or selection. When you set this property, the text in the range is replaced with formatted text. If you do not want to replace the existing text, use the Collapse method before using this property.
Sub FormattedTextProperty()   ' This example copies the first paragraph in the document, including   ' its formatting, and inserts the formatted text at the insertion   ' point.   Selection.Collapse Direction:=wdCollapseStart   Selection.FormattedText = ActiveDocument.Paragraphs(1).RangeEnd Sub				

Placing text into a header or footer

NOTE: The HeaderFooter property requires that the selection be located within a header or footer, or an error will occur.
Sub HeaderFooterProperty()   Dim MyText As String   MyText = "<Replace this with your text>"   ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader   Selection.HeaderFooter.Range.Text = "MyText"   ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocumentEnd Sub				
The following example changes the text of both the primary header and theprimary footer for the first section of the active document.
Sub HeaderFooterObject()  Dim MyText As String  MyHeaderText = "<Replace this with your text>"  MyFooterText = "<Replace this with your text>"  With ActiveDocument.Sections(1)    .Headers(wdHeaderFooterPrimary).Range.Text = MyHeaderText    .Footers(wdHeaderFooterPrimary).Range.Text = MyFooterText  End WithEnd Sub				

Using the Range or Selection object to insert a date using the Time field

This example inserts a Time field for the current date. A possible resultmight be "November 18, 1996."
Sub InsertDateTimeMethod()   Dim MyRange As Object   Set MyRange = Selection.Range   ' Selection Example:   Selection.InsertDateTime DateTimeFormat:="MMMM dd, yyyy", _   InsertAsField:=True   ' Range Example:   MyRange.InsertDateTime DateTimeFormat:="MMM dd, yyyy", _   InsertAsField:=TrueEnd Sub				

Using the Range or Selection object to insert a new paragraph

This example inserts a new paragraph below the current position of the insertion point.
Sub InsertParagraphMethod()   Dim MyRange As Object   Set MyRange = ActiveDocument.Range   ' Selection Example:   Selection.InsertParagraph   ' Range Example:   MyRange.Collapse Direction:=wdCollapseStart   MyRange.InsertParagraphEnd Sub				

Using the Range or Selection object to insert a symbol

This example inserts a double-headed arrow at the insertion point.
Sub InsertSymbolMethod()   Dim MyRange As Object   Set MyRange = ActiveDocument.Range   ' Selection Example:   Selection.InsertSymbol CharacterNumber:=171, _      Font:="Symbol", Unicode:=False   ' Range Example:   MyRange.Collapse Direction:=wdCollapseStart   MyRange.InsertSymbol CharacterNumber:=171, _      Font:="Symbol", Unicode:=FalseEnd Sub				

Using the Range or Selection object to paste from the clipboard

This example inserts text placed on the clipboard at the current position of the insertion point.
Sub PasteMethod()   Dim MyRange As Object   Set MyRange = Selection.Range   ' Selection Example:   Selection.Paste   ' Range Example:   MyRange.Collapse Direction:=wdCollapseStart   MyRange.PasteEnd Sub				

For more information about using the Range Object, in the Visual Basic Editor, click Microsoft Visual Basic Help on the Help menu, type Range Object in the Office Assistant or the Answer Wizard, and then click Search to view the topic.

For more information about using the Selection Object, in the Visual Basic Editor, click Microsoft Visual Basic Help on the Help menu, type Selection Object in the Office Assistant or the Answer Wizard, and then click Search to view the topic.

For more information about how to use the sample code in this article, clickthe article number below to view the article in the Microsoft Knowledge Base:
212536 OFF2000: How to Run Sample Code from Knowledge Base Articles
REFERENCES
For more information about getting help with Visual Basic for Applications, please see the following article in the Microsoft Knowledge Base:
226118 OFF2000: Programming Resources for Visual Basic for Applications
vb vba vbe
Properties

Article ID: 212682 - Last Review: 12/05/2015 12:05:10 - Revision: 3.2

Microsoft Word 2000 Standard Edition

  • kbnosurvey kbarchive kbdtacode kbhowto kbmacroexample kbprogramming KB212682
Feedback