Accessing Paragraphs in a Macro
Thứ Ba, 26 tháng 11, 2013
One of the nifty things about programming VBA macros is that the language is object-oriented. This means that you can access every part of your document using objects and collections of objects. In other words, you can manipulate paragraphs without ever needing to select them.
For instance, let's say you wanted to access each paragraph of a document, in turn, and do some processing on the text in that paragraph. Since each paragraph is a distinct object in the document, this is relatively easy. All of the paragraph objects are accessible as part of the Paragraphs collection. The following code will do the trick:
iParCount = ActiveDocument.Paragraphs.Count
For J = 1 To iParCount
sMyPar = ActiveDocument.Paragraphs(J).Range.Text
[Add processing comments to manipulate sMyPar]
ActiveDocument.Paragraphs(J).Range.Text = sMyPar
Next J
The first line of the code sets iParCount equal to the number of paragraphs in the current document. The loop starting in the second line then does the main work in the macro. The third line set the sMyPar string equal to the text within the specified paragraph. (When J is equal to 1, you are working with the first paragraph. When J is equal to 2, it is the second paragraph—and so on.)
After the processing of sMyPar is complete, then the next line sets the document text equal to the modified text in the sMyPar string.
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip applies to Microsoft Word 2007 and 2010.
All comments [ 0 ]
Your comments