WD2000: Using the Open Statement in Word VBA (209231)



The information in this article applies to:

  • Microsoft Word 2000

This article was previously published under Q209231

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. 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. 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 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

REFERENCES

For more information about getting help with Visual Basic for Applications, please see the following article in the Microsoft Knowledge Base:

226118 OFF2000: Programming Resources for Visual Basic for Applications


Modification Type:MinorLast Reviewed:10/11/2006
Keywords:kbdtacode kbhowto kbmacroexample kbProgramming KB209231