need subdirectory check 99

R

Ray

The following code writes the contents (directories and files) into a text
file. It indents directories then places the filenames in line beneath that
directory. When it encounters another directory it indents again. The problem
I have is I do not know how to check if the directory is a SUB directory?
Onces the program hits a new parent directory I would like to reset the tab
to 0. The resulting print would be formatted like windows explorer listing
with subdirectories incrementally tabbed beneath its parent directory and all
parent directories to have no indentation.

Bottom line I need a method to check if property a subdirectory. Current
code shown below:

txtfile = "c:\temp\List2.txt"
Filenum = FreeFile
numfiles = 1
tabbed = 1
Open txtfile For Output Access Write As Filenum
' Display the names in C:\ that represent directories.
MyPath = "c:\" ' Set the path.
myname = Dir(MyPath, vbDirectory) ' Retrieve the first entry.
Do While myname <> "" ' Start the loop.

' Ignore the current directory and the encompassing directory.
If myname <> "." And myname <> ".." Then

' Use bitwise comparison to make sure MyName is a directory.
If (GetAttr(MyPath & myname) And vbDirectory) = vbDirectory Then
tabbed = tabbed + 1
Print #Filenum, Tab(tabbed); "-->"; myname
Else
Print #Filenum, Tab(tabbed + 4); myname
End If ' it represents a directory.
End If
myname = Dir ' Get next entry.
Loop
Close #Filenum
 
T

Tom Ogilvy

I believe you are mistaken on what your code is doing
Your code works on a single directory. In this case "C:\"

It will list the subdirectories "C:\" and files in "C:\"

It does not list the files for any subdirectories found in that directory.

The way you have your Tabbed variable set up should make a progressive
indent, but it is meaningless.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnofftalk/html/office09072000.asp
Working with Files, Folders, and Drives: More VBA Tips and Tricks
by David Shank (Office talk)




http://support.microsoft.com/kb/185476/EN-US/
How To Search Directories to Find or List Files

http://support.microsoft.com/kb/185601/EN-US/
HOW TO: Recursively Search Directories by Using FileSystemObject

http://support.microsoft.com/kb/186118/EN-US/
How To Use FileSystemObject with Visual Basic


Jim Rech posted recently posted some code that Bill Manville wrote.


Here's a link:


http://groups.google.com/groups?threadm=ekg68u9YCHA.1880@tkmsftngp11
 
R

Ray

Thanks. The code I left is doing what I want except I need a control to
indicate when to reset the tab. I realize now that all directories are
subdirectories of the parent C: so a simple property check for subdirectories
will not work. Thanks again and I will review the link you provided.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top