Quang_Hải
Thành viên gạo cội
- Tham gia
- 21/2/09
- Bài viết
- 6,051
- Được thích
- 7,949
- Nghề nghiệp
- Làm đủ thứ
Mình có viết đoạn code để lấy tất cả file trong thư mục mẹ và thư mục con.
Nhưng loay hoay mãi không biết làm sao để không phải khai báo biến toàn cục.
Các anh chị xem qua code và vui lòng xin cho ý kiến.
Nhưng loay hoay mãi không biết làm sao để không phải khai báo biến toàn cục.
Các anh chị xem qua code và vui lòng xin cho ý kiến.
PHP:
Public k As Long, Res()
Sub Main()
Dim strPath As String, fso As Object, chk As Boolean
Set fso = CreateObject("Scripting.FileSystemObject")
With Application.FileDialog(msoFileDialogFolderPicker)
chk = .Show
If Not chk Then Exit Sub
strPath = .SelectedItems(1)
End With
If Len(strPath) Then Call GetAllFiles(strPath, fso)
If k Then [A5].Resize(k) = Application.Transpose(Res)
k = 0
End Sub
Function GetAllFiles(ByVal StrFolder As String, ByRef fso As Object)
Dim objFolder As Object, objSubFolder As Object, File
Set objFolder = fso.GetFolder(StrFolder)
For Each objSubFolder In objFolder.SubFolders
Call GetAllFiles(objSubFolder.path, fso)
For Each File In objSubFolder.Files
k = k + 1
ReDim Preserve Res(1 To k)
Res(k) = fso.GetBaseName(File)
Next
Next objSubFolder
End Function