Welcome toWord.Tips.Net
Ask a Word Question
Make a Comment
Learn Access Now
Free Printable Forms
Beauty Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Legal Tips
Money Tips
Organizing Tips
Pest Tips
Pet Tips
Wedding Tips
Word2007 Tips
WordTips
Setting Fraction Bar Overhang Spacing in the Equation Editor
Printing On Both Sides of the Paper
Turning Off AutoComplete for Dates
Understanding Auto Line Spacing
Adding Comments to Your Document
Conditional Calculations in Word
Users of WordPerfect may be familiar with the feature that allows you to print the contents of a directory. Indeed, it can be very handy to have a printout of all the documents in a directory. Unfortunately, Word does not have an intrinsic command that allows you to accomplish the same task. There are a couple of ways you can approach this problem, however.
The first is the old tried-and-true DIR method, which has been used by "techies" since the days of DOS. Simply open a command prompt (MS-DOS) window, locate the directory for which you want a list, and then type the following command:
dir /b > mydir.txt
This creates a text file (mydir.txt) that contains only the names of the files in the directory. You can then locate the file in Word and load it as a document. While this approach is not a single step, it is not particularly difficult, either.
If you would like a macro solution to the problem, you can use the following. It displays the standard Open dialog box, in which you can browse for the directory for which you want a list. When you select a file in that directory and click on Open, the macro creates a new Word document that lists all the files that the directory contains. Note that you must select a file from the directory.
Sub ListFiles()
Dim PathWanted As String
Dim Temp As String
Dim i As Integer
With Dialogs(wdDialogFileOpen)
.Name = "*.*"
If .Display = -1 Then
Documents.Add
PathWanted = Options.DefaultFilePath(wdDocumentsPath)
Selection.TypeText "Files in " & PathWanted & ":" & vbCrLf
With Application.FileSearch
.LookIn = PathWanted
.FileName = "*.*"
If .Execute > 0 Then
For i = 1 To .FoundFiles.Count
Temp = .FoundFiles(i)
While InStr(Temp, "\") > 0
Temp = Mid(Temp, InStr(Temp, "\") + 1)
Wend
Selection.TypeText Temp & vbCrLf
Next
End If
End With
End If
End With
End Sub
If you want to limit the files returned by the macro (for instance, to only those ending in .DOC), then you can change the file specifications ("*.*") in two of the program lines.
Tip #1148 applies to Microsoft Word versions: 97 2000 2002 2003 2007
More Power! For some people, the prospect of creating Word macros can be scary. WordTips: The Macros can help you conquer your fears and you'll discover you're much more confident and productive as you make Word do exactly what you want. This is an invaluable source for learning macros. You are introduced to the topic in bite-sized chunks, pulled from past issues of WordTips. Learn at your own pace, exactly the way you want.