Sub file_names_including_sub_folder() Application.ScreenUpdating = False Dim fldpath Dim fld As Object, fil As Object, fso As Object, j As Long With Application.FileDialog(msoFileDialogFolderPicker) .Title = "Choose the folder" .Show End With On Error Resume Next fldpath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\" If fldpath = False Then MsgBox "Folder Not Selected" Exit Sub End If Workbooks.Add Cells(1, 1).Value = fldpath Cells(2, 1).Value = "Path" Cells(2, 2).Value = "Dir" Cells(2, 3).Value = "Name" Cells(2, 4).Value = "Size" Cells(2, 5).Value = "Type" Cells(2, 6).Value = "Date Created" Cells(2, 7).Value = "Date Last Access" Cells(2, 8).Value = "Date Last Modified" Set fso = CreateObject("scripting.filesystemobject") Set fld = fso.getfolder(fldpath) j = 4 get_sub_foldernames fld Range("a1").Font.Size = 9 ActiveWindow.DisplayGridlines = False Range("a3:h" & Range("a4").End(xlDown).Row).Font.Size = 9 Range("a2:h2").Interior.Color = vbCyan Columns("c:h").AutoFit Application.ScreenUpdating = True End Sub Sub get_sub_foldernames(ByRef prntfld As Object) Dim subfld As Object, fil As Object, j As Long For Each fil In prntfld.Files j = Range("A1").End(xlDown).Row + 1 Cells(j, 1).Value = fil.Path Cells(j, 2).Value = Left(fil.Path, InStrRev(fil.Path, "\")) Cells(j, 3).Value = fil.Name Cells(j, 4).Value = fil.Size Cells(j, 5).Value = fil.Type Cells(j, 6).Value = fil.DateCreated Cells(j, 7).Value = fil.DateLastAccessed Cells(j, 8).Value = fil.DateLastModified Next For Each subfld In prntfld.SubFolders get_sub_foldernames subfld Next subfld End Sub
see if it helps On Wed, Jul 24, 2013 at 7:03 PM, priti verma <pritiverma1...@gmail.com>wrote: > Thanks Dp, > But its giving only Nested foldersname. > I want files name. > Anyway i got idea from your Code > > > On Wed, Jul 24, 2013 at 7:22 AM, De Premor <d...@premor.net> wrote: > >> 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>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] *On Behalf Of *priti verma >>> *Sent:* Wednesday, July 24, 2013 5:21 PM >>> *To:* 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. >>> 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. >>> >>> >>> >> >> -- >> 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. >> >> >> > > -- > 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. > > > -- *Regards* * * *Ashish Koul* *Visit* *My Excel Blog <http://www.excelvbamacros.com/>* Like Us on Facebook<http://www.facebook.com/pages/Excel-VBA-Codes-Macros/151803898222297> Join Us on Facebook <http://www.facebook.com/groups/163491717053198/> P Before printing, think about the environment. -- 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.