Written by Allen Wyatt (last updated June 6, 2024)
This tip applies to Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365
In putting together a client's file, Boneita needs to create a document that contains a list of everything in a particular folder—all documents and subfolders. She wonders if there is an easy way to get such a list in Word.
Actually, there are a few ways you can accomplish this task, but none of them are native to Word. Here's an easy way that I use all the time:
Figure 1. Context menu displayed when Shift+right-clicking on a group of files.
What you end up with is the list of files—including full path names—in your document. You can then edit the list in any way desired. For instance, you might want to select what was pasted and use Find and Replace to modify the path to each file, as desired.
If you are looking for a more traditional way of getting the list using the command prompt or a macro, you should consider the WordTip located at this URL:
https://tips.net/T1466
There are also third-party solutions available, such as Karen's Directory Printer, which was suggested by more than one subscriber:
https://www.karenware.com/powertools/karens-directory-printer
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (3435) applies to Microsoft Word 2007, 2010, 2013, 2016, 2019, and Word in Microsoft 365.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!
If you use TrueType fonts frequently, you might want to set Word to embed those fonts by default. Here's how to do it.
Discover MoreWhen you save your documents, you can specify that they be saved in a "read-only" format so that they cannot be changed ...
Discover MoreWhen writing a macro that processes a text file, you may need to know when the end of the file has been reached. This is ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2024-08-08 10:08:56
Timothy J. McGowan
You can use the Windows Explorer/File Explorer/File Manager trick to find all files in all subfolders as well.
Press Ctrl+F or Ctrl+E to get into the Search box.
Enter a single asterisk (*).
Press the Enter key.
You'll get a listing of all files in that folder and all subfolders.
Press Ctrl+A to select all files (and if it's a large number of items, wait!).
Hold down a Shift key and right-click any highlighted file.
Choose Copy as Path (and you may have to wait again).
Open Word or other destination program.
Paste the listing.
Note: The listing is in no useful order. You'll definitely need to sort the results.
Note too that on my Windows 11 Pro system, the delays in File Explorer were 5 to 10 seconds after choosing to select all files and 20 to 30 seconds to copy as path on a folder of over 21,000 files and subfolders.
This process gives only the folder and file names. If you want file sizes and dates, I would use Andrew's macro below, modifying one line:
Const Switches As String = "/OGNE /TW /S" ' Remove "/S" to exclude subfolders
/O orders the list according to the options following and attached to /O. From the DIR command's help text:
G Group directories first
N By name (alphabetic)
E By extension (alphabetic)
S By size (smallest first)
D By date/time (oldest first)
- (hyphen) Prefix to reverse order
Thus, /OGNE orders the listing by folder (important if you are including the /S switch), then by name, then by file name extension.
/TW gives the date the file was last written. You can instead select for creation date or last-access date:
/TC Creation
/TA Last Access
/TW Last Written
2024-07-11 15:26:14
Another third party tool is: Directory ReportIt prints many file attributes
2024-06-06 04:37:38
karmen
worked great for me. thank you, karmen
2022-10-13 13:58:56
Kristina
Never mind; I got it to work!
2022-10-13 13:38:03
Kristina
I just can't get this to work; when I copy the file path and paste it, this is what I get. "W:\WORKGROUPS\P&E"
Not sure what I am doing wrong!
2021-07-06 10:32:43
Andrew
Here's the way I do it in a macro to create a folder listing in a document via piping the DIR command to a temporary file. This allows using all of the DIR command's options. This is the guts of a larger procedure I use to compare the details of the files (dates, sizes, etc.) in two different directories using Word's CompareDocs feature.
Sub CreateFolderListing()
Const Switches As String = "/OGN /TW /B" ' Add "/S" for subfolders
Dim CommandLine As String
Dim FolderName As String
Dim TempName As String
Dim FSO As New FileSystemObject
FolderName = "c:\"
TempName = FSO.GetSpecialFolder(TemporaryFolder) & "\" & FSO.GetTempName
CommandLine = "cmd.exe /C dir " & Switches & " """ & FolderName & """ > """ & TempName & """"
Call CreateObject("WScript.Shell").Run(CommandLine, 2, True) ' See https://ss64.com/vb/shell.html
Documents.Add.Content.InsertFile filename:=TempName, ConfirmConversions:=False
Kill TempName
End Sub
2021-07-02 15:14:52
Bob Hall
Getting a List of Folder Contents.
I followed the directions for this task and it worked first time. Great. I have wanted to do that a few times and never knew how.
I want to get macros working in Excel but have had no luck. At one time I was fluent with macros using the ancient Apple II Appleworks program. It was fantastic.
I would also like a VERY SIMPLE flat file database that is popular enough for other people to read. I wish Microsoft had made such a program.
2020-07-15 17:11:37
Laura S
I LOVE THIS TIP! SO EASY! I had a folder of documents for an instructor that he wanted help uploading to his course. After a week, he had not provided what dates to make items available. I used this process and emailed the document to him. He replied in 20 minutes!!! T
Thank you for such a helpful tip!!!
2020-06-17 18:12:59
Janice Briggs
A fast and easy way is to open the folder and using a snipping tool make a copy. This will not give you list you can manipulate, but you can print it and have access to a list of your files on paper.
2019-07-02 21:07:01
binaryman
I recommend this third party tool: Directory Report
It can save the contents of your directories to many file formats: txt, csv, xml, directly to MS-Excel, and clipboard
it can get the attributes of: DLL/Exe, AVI, MP3, MSI, WAV and MS-Office properties
2019-03-10 16:25:34
Bin Man
Hi Allen
I use Directory Report to get a List of Folder Contents
It can export a directory list directly to MS-Excel
Very customizable
2019-03-05 02:46:00
MW
Ken & Paul:
That's a lot of files . . . if I had the need to post a list even much smaller than that and potentially sort on it, I would be inclined to create the list in Excel.
To do that, I would engage a very powerful freebie called ASAP Utilities that has a built in utility to create such a file list (including subfolders) in an Excel file.
(Happily I don't have a need to reference that quantity of files in a Word document).
2019-03-04 17:15:53
Ken Endacott
I was going to give a warning not to try the macro on very large folders such as C:\Windows or C: but Paul has beaten me to it.
For file properties that can be listed, see:
https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/file-object
DateLastModified is probably more useful than DateCreated in the macro, or maybe you need both.
2019-03-04 09:33:03
Paul Hanson
FYI, if you have 58473 files spread across 14354 sub-directories, Ken's macro will give you a Word document with all the files & sub-folders, but it won't create the table, due to Word's limit. Totally neat trick though!
2019-03-03 13:07:02
Dori
Oh My Goodness! This is a FABULOUS Tip!!! Thank you so very much. You just saved me bushels of time!
2019-03-03 08:41:07
Ken Endacott
The solution shown will give a list of files in a folder but not its sub folders.
The following macro will produce a list of all files in a folder and its sub-folders. The detail given for each file is the path, the name, the size and the creation date. Other file information could be shown by changing the statement flNames(UBound(flNames)) = …
The results are put into a table in a new document. Word’s Sort can then be used to sort into any order.
' ***** This declaration must be at the top of the module *****
Dim flNames() As String
' ************************************************************
Sub FilesInFolderAndSubFolders()
Dim FileSystem As Object
Dim mydir As String
Dim j As Long
mydir = InputBox("Folder path. For example C:\MyFolder")
ReDim flNames(0)
Set FileSystem = CreateObject("Scripting.FileSystemObject")
DoFolder FileSystem.GetFolder(mydir)
Documents.Add
Selection.TypeText "Path" & vbTab & "File name" & vbTab & _
"Size" & vbTab & "Creation Date" & vbCrLf
For j = 1 To UBound(flNames)
Selection.TypeText flNames(j)
Next j
ActiveDocument.Range.Select
Selection.ConvertToTable Separator:=wdSeparateByTabs, AutoFitBehavior:=wdAutoFitFixed
Selection.Tables(1).Style = "Table Grid"
End Sub
Sub DoFolder(Folder)
Dim SubFolder
Dim aFile
Dim nextDoc As Document
For Each SubFolder In Folder.SubFolders
DoFolder SubFolder
Next SubFolder
For Each aFile In Folder.Files
ReDim Preserve flNames(UBound(flNames) + 1)
flNames(UBound(flNames)) = Folder & vbTab & _
aFile.Name & vbTab & aFile.Size & vbTab & aFile.DateCreated & vbCrLf
Next aFile
End Sub
2019-03-02 16:43:00
MW
I too frequently need to list the file contents of a folder in my reports.
I discovered it is fastest to open the target folder in Explorer, organize/display the files you want (e.g. either or without attributes), simply take a screen shot of the file list and paste the graphic into your document.
If the directory path is important to you, just expand the screen shot coverage to include the path shown in the navigation bar too.
2019-03-02 15:15:38
David in Mississippi
"Copy as Path" does not show up on my Windows 10 (latest version) context menu. Any help there?
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.
Visit the WordTips channel on YouTube
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2024 Sharon Parq Associates, Inc.
Comments