O'Reilly logo

Writing Word Macros, Second Edition by Steven Roman PhD

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Creating InLineShapes

As I have said, an inline shape is a shape that is placed in the text layer of a document and moves with the surrounding text. Inline shapes are restricted to pictures, OLE objects, and ActiveX controls. We will content ourselves with a single example of placing pictures in a document.

To add an inline picture to a document, use the AddPicture method of the InLineShapes collection. The syntax is:

InLineShapesObject.AddPicture(FileName, LinkToFile, _
	SaveWithDocument, Range)

The FileNameparameter is the name of the picture file. The optional LinkToFile is set to True to link the picture to the file from which it was created and False to use an independent copy of the original picture. The default value is False. If the picture is linked, the optional SaveWith Document is set to True to save the linked picture with the document. The default value is False. The parameter Range is the range that will be replaced by the picture (unless, of course, the range is an insertion point).

To illustrate, the following code places a picture with the word ATTENTION! in front of each paragraph that has style Heading 2, turning Figure B-5 into Figure B-6:

	Dim para As Paragraph
	For Each para In ActiveDocument.Paragraphs
	If para.Style = "Heading 2" Then
	   ActiveDocument.InlineShapes.AddPicture _
	      "d:\word\atten.bmp", , , para.Range
	End If
	Next para

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required