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.
For more information about how to use the sample code in this article, click
the article number below to view the article in the Microsoft Knowledge
Base:
212536
OFF2000: How to Run Sample Code from Knowledge Base Articles
The following code sample sets the publish status of all pages in the root folder of the active web to "Don't publish." After you run this macro, all files in the root folder of the active web will not be published, when you publish the web.
Sub SetPublishStatus()
'Set up variables
Dim myWeb As Web
Dim myWebFile As WebFile
'Set the myWeb variable to equal the ActiveWeb
Set myWeb = ActiveWeb
'This For loop loops through each file in the root folder
'of the active web.
For Each myWebFile In myWeb.RootFolder.Files
'Call the Add method to set the publish status.
'Using the Add method, we change the vti_donotpublish
'property key for the current file.
Call myWebFile.Properties.Add("vti_donotpublish", True)
'After changing the vti_donotpublish property key, the
'ApplyChanges method must be called to apply the new
'publish status.
myWebFile.Properties.ApplyChanges
'Loop to the next file in the root folder
Next myWebFile
End Sub
You can change the publish status of the files in the root folder back to "Publish" by changing the following line of code:
Call myWebFile.Properties.Add("vti_donotpublish", True)
-to-
Call myWebFile.Properties.Add("vti_donotpublish", False)