【问题标题】:list subfolders and files of main folder with details列出包含详细信息的主文件夹的子文件夹和文件
【发布时间】:2014-10-05 21:11:34
【问题描述】:

我对编程很陌生,但到目前为止我很享受它。

也许有一些技巧可以制作返回的 vbs 文件?

到目前为止,我有这个:

(但它不返回有多少文件的计数器,也不分隔不同列中的字​​段)

Dim fso 
Dim ObjOutFile  

Set fso = CreateObject("Scripting.FileSystemObject")  

Set ObjOutFile = fso.CreateTextFile("OutputFiles.csv") 

ObjOutFile.WriteLine("Type,File Name,File Path") 

GetFiles("C:\Intel")  

ObjOutFile.Close  
WScript.Echo("Completed")

Function GetFiles(FolderName)  
  On Error Resume Next  
  Dim ObjFolder 
  Dim ObjSubFolders  
  Dim ObjSubFolder  
  Dim ObjFiles  
  Dim ObjFile  
  Set ObjFolder = fso.GetFolder(FolderName) 
  Set ObjFiles = ObjFolder.Files  

  For Each ObjFile In ObjFiles  
    ObjOutFile.WriteLine("File," & ObjFile.Name & "," & ObjFile.Path)  
  Next  

  Set ObjSubFolders = ObjFolder.SubFolders  
  For Each ObjFolder In ObjSubFolders  
    ObjOutFile.WriteLine("Folder," & ObjFolder.Name & "," & ObjFolder.Path)  
    GetFiles(ObjFolder.Path)  
  Next  
End Function 

在此先感谢大家! 你会有一个非常感谢的女孩在这里发帖! :D

【问题讨论】:

  • 你能澄清你的问题到底是什么吗?
  • 我需要帮助来制作一个返回主文件夹的文件和子文件夹列表的 vbs 文件(我没有将不同列中的字​​段分开)
  • 向我们展示您的输出现在是什么样子以及您希望它是什么样子。

标签: excel list vba directory


【解决方案1】:

这是我用来提取文件名/文件夹和路径的方法。

Sub PullFileFolderPaths()

Dim varDirectory As Variant
Dim flag As Boolean
Dim i As Integer
Dim strDirectory As String

strDirectory = "C:\Home\Preflight\"
i = 1
flag = True
varDirectory = Dir(strDirectory, vbDirectory)

While flag = True
  If varDirectory = "" Then
    flag = False
  Else
    Cells(i + 1, 1) = varDirectory
    Cells(i + 1, 2) = strDirectory + varDirectory
    'returns the next file or directory in the path
    varDirectory = Dir
    i = i + 1
End If
Wend
End Sub

【讨论】:

  • 你好比尔,非常感谢你的帮助!现在我将其调整为 .vbs 文件:S
猜你喜欢
  • 2019-03-22
  • 2015-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-12
相关资源
最近更新 更多