Microsoft KB Archive/105682

From BetaArchive Wiki

WD: WordBasic SetAttr Statement Adds Files Attributes


The information in this article applies to:

  • Microsoft Word for Windows, versions 6.0, 6.0a, 6.0c
  • Microsoft Word for Windows NT, version 6.0
  • Microsoft Word for Windows 95, versions 7.0, 7.0a
  • Microsoft Word for the Macintosh, version 6.0


The Microsoft WordBasic SetAttr statement sets file attributes for a specified file. Attributes that are set with the SetAttr statement are additive and do not remove previous attributes for the file.


Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals 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 needs. If you have limited programming experience, you may want to contact a Microsoft Certified Partner or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Partners, please see the following page on the World Wide Web:

For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

The arguments for the SetAttr statement correspond to the file attributes you can set using the Properties command (File menu) in File Manager.


   SetAttr Filename$, Attribute 


   0(zero)  Clears all attributes
   1        Read only
   2        Hidden
   4        System
   32       Archive 


The following sample macro clears the current file attributes for Mydoc.doc and then adds the read-only file attribute.

Word for Windows

   Sub MAIN
      SetAttr "D:\WINWORD6\MYDOC.DOC", 0  'Clear all file attributes.
      SetAttr "D:\WINWORD6\MYDOC.DOC", 1  'Adds the read-only attribute.
   End Sub 

Word for the Macintosh

   Sub MAIN
      SetAttr "Macintosh HD:MACWORD6:MYDOC.DOC", 0  ' Clear file attributes
      SetAttr "Macintosh HD:MACWORD6:MYDOC.DOC", 1  ' Adds the read-only
                                                    ' attribute.
   End Sub 

If a file has the hidden and system attributes (value of 6, sum of 2 and 4) and you don't first clear the file attributes, the following statement sets the attributes to hidden, system, and read-only (value 7, sum of 2, 4, and 1).

   SetAttr "D:\WINWORD6\MYDOC.DOC", 1  'adds the read-only attribute 

NOTE: This does not apply to Word for the Macintosh. New file attributes set for a Word for the Macintosh file do not have to be cleared before new attributes are applied. The new attributes override those previously set.

Use the GetAttr() function to determine the current file attributes for a file.

   n = GetAttr "D:\WINWORD6\MYDOC.DOC" 

The file attribute value is stored in the variable "n".

NOTE: In the above example, the MsgBox command statement is optional. It allows for the display of the value returned.


Programming with Microsoft Word Online Help, SetAttr topic

Additional query words: getattr

Keywords : kbmacro kbprg kbdtacode wordnt kbmacroexample ntword macword word6 word7 word95
Issue type : kbhowto kbinfo
Technology : kbWordSearch kbWordWSearch kbWordMSearch

Last Reviewed: December 29, 2000
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.