WD2000: Using the Open Statement in Word VBA

ID: Q209231


The information in this article applies to:
  • Microsoft Word 2000


SUMMARY

The Open statement is part of the Microsoft Visual Basic for Applications (VBA) language. This command allows you to open a text data file for reading, modifying, or adding to the file.

The Open statement does not open the text data file in Word as a document. The file is open in VBA for manipulation by your VBA macro.

NOTE: The Open statement should not be used to open a program's own file types. For example, do not use this Open statement to access Word documents, a Microsoft Excel worksheet, or a Microsoft Access database. Doing so may cause file corruption and loss of file integrity.


MORE INFORMATION

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 Solution Provider or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Solution Providers, please see the following page on the World Wide Web:

http://www.microsoft.com/mcsp/
For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

http://www.microsoft.com/support/supportnet/overview/overview.asp
The correct syntax for the Open statement is as follows:



   Open pathname For mode [access] [lock] As [#]filenumber [Len=reclength] 
The Open statement syntax has the following parts.



Part            Description
---------------------------

pathname        Required. String expression that specifies a file name may
                include directory or folder, and drive.

    mode        Required. Keyword specifying the file mode: Append, Binary,
                Input, Output, or Random. If unspecified, the file is
                opened for Random access.

  access        Optional. Keyword specifying the operations permitted on
                the open file: Read, Write, or Read Write.

    lock        Optional. Keyword specifying the operations permitted on
                the open file by other processes: Shared, Lock Read, Lock
                Write, and Lock Read Write.

filenumber      Required. A valid file number in the range 1 to 511,
                inclusive. Use the FreeFile function to obtain the next
                available file number.

reclength       Optional. Number less than or equal to 32,767 (bytes). For
                files opened for random access, this value is the record
                length. For sequential files, this value is the number of
                characters buffered. 

Statement Example


Sub OpenExample()
   Dim sFirst, sLast, sAddress, sCity, sState, sZip As String
   ' CREATE DATA FILE
   ' Open file for input.
   Open "Datafile.txt" For Output As #1
   ' Write data to file.
   Write #1, "John", "Doe", "An Address", "A City", "A State", "A Zip"
   ' Close File.
   Close #1
   ' RETRIEVE DATA FROM FILE
   ' Open file for input.
   Open "Datafile.txt" For Input As #1
   ' Loop until the end of file is reached.
   Do While Not EOF(1)
      ' Read data into variables.
      Input #1, sFirst,sLast,sAddress,sCity,sState,sZip
      ' Print data to Debug window.
      Debug.Print sFirst,sLast,sAddress,sCity,sState,sZip
   Loop
   ' Close file.
   Close #1
End Sub 

This macro creates or opens a file called Datafile.txt and puts the comma and quotation mark delimited data into the file. The data can then later be retrieved using the Input # statement.

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

For more information about using the sample code in this article, please see the following article in the Microsoft Knowledge Base:
Q212536 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:

Q226118 OFF2000: Programming Resources for Visual Basic for Applications

Additional query words: vb vba vbe

Keywords : kbdta kbdtacode OffVBA kbmacroexample wd2000
Version : WINDOWS:2000
Platform : WINDOWS
Issue type : kbhowto


Last Reviewed: September 3, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.