PFA

Dim Rng As Range, iRow As Integer

Sub GetFolder()
    Dim fldr As FileDialog
    Set Rng = ActiveCell
    Set fldr = Application.FileDialog(msoFileDialogFolderPicker)
    fldr.AllowMultiSelect = False
    If fldr.Show = -1 Then Call ListIt(fldr.SelectedItems(1))
End Sub

Private Function ListIt(SelectedPath As String, Optional tCol As Integer = 0)
    Dim FSO As Scripting.FileSystemObject, sFolder, sSubFolder, lPath
    On Error Resume Next
    Set FSO = New Scripting.FileSystemObject
    Set sFolder = FSO.GetFolder(SelectedPath)
    lPath = Split(SelectedPath, "\")
    Rng.Offset(iRow, tCol).Value = lPath(UBound(lPath))
    iRow = iRow + 1
    For Each sSubFolder In sFolder.SubFolders
        Call ListIt(sSubFolder.Path, (tCol + 1))
    Next
End Function


Pada 24/07/2013 19:37, priti verma menulis:
Thank for quick response But this code is not working fine .
Its giving Only first folder 's file name  .
I mean I have lots of folder and and file in main folder.and folder contain further folders and file and these folder also contains some folder and files.

So i want all files name from  all nested folder


On Wed, Jul 24, 2013 at 6:17 AM, Excel Learn <excellearn2...@gmail.com <mailto:excellearn2...@gmail.com>> wrote:

    Hi Priti,

    Please see if it help

    Public Sub selectfol()

    On Error Resume Next

    Set path1 = CreateObject("Shell.application").browseforfolder(0,
    "Please choose a folder", 0, openat)

    pathm = path1.self.Path

    UserForm1.TextBox1.Text = pathm & "\"

    mysourcepath = pathm & "\"

    Set myobject = CreateObject("scripting.filesystemobject")

    Set mysource = myobject.getfolder(mysourcepath)

    Range("A1").Select

    m = 1

    acount = 0

    For Each myfile In mysource.Files

    myfile.Open

    acount = acount + 1

    Next

    ReDim arrFiles(acount) As Variant

    i = 0

    For Each myfile In mysource.Files

    arrFiles(i) = myfile.Name

    If m = 1 Then

    ActiveCell.Value = myfile.Name

    ActiveCell.Offset(1, 0).Select

    Else

    ActiveCell.Value = myfile.Name

    ActiveCell.Offset(1, 0).Select

    End If

    m = m + 1

    i = i + 1

    Next

    End Sub

    *From:*excel-macros@googlegroups.com
    <mailto:excel-macros@googlegroups.com>
    [mailto:excel-macros@googlegroups.com
    <mailto:excel-macros@googlegroups.com>] *On Behalf Of *priti verma
    *Sent:* Wednesday, July 24, 2013 5:21 PM
    *To:* excel-macros@googlegroups.com
    <mailto:excel-macros@googlegroups.com>
    *Subject:* $$Excel-Macros$$

    Hi everyone,

    Help me on this ,

    i want all files name from folders.

    Folder1

                 foldera

     folderb

-- Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna
    be? It’s =TIME(2,DO:IT,N:OW) ! Join official Facebook page of this
    forum @ https://www.facebook.com/discussexcel

    FORUM RULES

    1) Use concise, accurate thread titles. Poor thread titles, like
    Please Help, Urgent, Need Help, Formula Problem, Code Problem, and
    Need Advice will not get quick attention or may not be answered.
    2) Don't post a question in the thread of another member.
    3) Don't post questions regarding breaking or bypassing any
    security measure.
    4) Acknowledge the responses you receive, good or bad.
    5) Jobs posting is not allowed.
    6) Sharing copyrighted material and their links is not allowed.

    NOTE : Don't ever post confidential data in a workbook. Forum
    owners and members are not responsible for any loss.
    ---
    You received this message because you are subscribed to the Google
    Groups "MS EXCEL AND VBA MACROS" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to excel-macros+unsubscr...@googlegroups.com
    <mailto:excel-macros+unsubscr...@googlegroups.com>.
    To post to this group, send email to excel-macros@googlegroups.com
    <mailto:excel-macros@googlegroups.com>.
    Visit this group at http://groups.google.com/group/excel-macros.
    For more options, visit https://groups.google.com/groups/opt_out.

-- Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna
    be? It’s =TIME(2,DO:IT,N:OW) ! Join official Facebook page of this
    forum @ https://www.facebook.com/discussexcel

    FORUM RULES

    1) Use concise, accurate thread titles. Poor thread titles, like
    Please Help, Urgent, Need Help, Formula Problem, Code Problem, and
    Need Advice will not get quick attention or may not be answered.
    2) Don't post a question in the thread of another member.
    3) Don't post questions regarding breaking or bypassing any
    security measure.
    4) Acknowledge the responses you receive, good or bad.
    5) Jobs posting is not allowed.
    6) Sharing copyrighted material and their links is not allowed.

    NOTE : Don't ever post confidential data in a workbook. Forum
    owners and members are not responsible for any loss.
    ---
    You received this message because you are subscribed to the Google
    Groups "MS EXCEL AND VBA MACROS" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to excel-macros+unsubscr...@googlegroups.com
    <mailto:excel-macros%2bunsubscr...@googlegroups.com>.
    To post to this group, send email to excel-macros@googlegroups.com
    <mailto:excel-macros@googlegroups.com>.
    Visit this group at http://groups.google.com/group/excel-macros.
    For more options, visit https://groups.google.com/groups/opt_out.



--
Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be? It’s =TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @ https://www.facebook.com/discussexcel

FORUM RULES

1) Use concise, accurate thread titles. Poor thread titles, like Please Help, Urgent, Need Help, Formula Problem, Code Problem, and Need Advice will not get quick attention or may not be answered.
2) Don't post a question in the thread of another member.
3) Don't post questions regarding breaking or bypassing any security measure.
4) Acknowledge the responses you receive, good or bad.
5) Jobs posting is not allowed.
6) Sharing copyrighted material and their links is not allowed.

NOTE : Don't ever post confidential data in a workbook. Forum owners and members are not responsible for any loss.
---
You received this message because you are subscribed to the Google Groups "MS EXCEL AND VBA MACROS" group. To unsubscribe from this group and stop receiving emails from it, send an email to excel-macros+unsubscr...@googlegroups.com.
To post to this group, send email to excel-macros@googlegroups.com.
Visit this group at http://groups.google.com/group/excel-macros.
For more options, visit https://groups.google.com/groups/opt_out.



--
Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be? It’s 
=TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @ 
https://www.facebook.com/discussexcel

FORUM RULES

1) Use concise, accurate thread titles. Poor thread titles, like Please Help, 
Urgent, Need Help, Formula Problem, Code Problem, and Need Advice will not get 
quick attention or may not be answered.
2) Don't post a question in the thread of another member.
3) Don't post questions regarding breaking or bypassing any security measure.
4) Acknowledge the responses you receive, good or bad.
5) Jobs posting is not allowed.
6) Sharing copyrighted material and their links is not allowed.

NOTE  : Don't ever post confidential data in a workbook. Forum owners and 
members are not responsible for any loss.
--- You received this message because you are subscribed to the Google Groups "MS EXCEL AND VBA MACROS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to excel-macros+unsubscr...@googlegroups.com.
To post to this group, send email to excel-macros@googlegroups.com.
Visit this group at http://groups.google.com/group/excel-macros.
For more options, visit https://groups.google.com/groups/opt_out.


Attachment: ListFolder.xlsm
Description: application/vnd.ms-excel.sheet.macroenabled.12

Reply via email to