Excel 使用vba分离foldername和显示在to列中
我是VBA新手, 我需要一些代码VBA的例子,以获取具有指定名称的子文件夹列表,并将其放入excel表中。我的文件夹的名称如下: AUD_C1234_02_产品 我想在我有4列的表中获得这样的名称(新行中的每个文件夹名称),所以新列的分隔符是下划线_ 最终结果必须是: A列B列C列D 澳元C1234 02产品Excel 使用vba分离foldername和显示在to列中,excel,vba,Excel,Vba,我是VBA新手, 我需要一些代码VBA的例子,以获取具有指定名称的子文件夹列表,并将其放入excel表中。我的文件夹的名称如下: AUD_C1234_02_产品 我想在我有4列的表中获得这样的名称(新行中的每个文件夹名称),所以新列的分隔符是下划线_ 最终结果必须是: A列B列C列D 澳元C1234 02产品 获取子文件夹: 您可以创建FileSystemDescripting对象 将文件夹名称分为4列。 可以使用split()函数来执行此操作 以下是示例代码: Sub putSubFolder
Sub putSubFoldersIntoSheet(inputFolderPath As String)
Dim fso As FileSystemObject
Set fso = New FileSystemObject
Dim inputFolder As Folder
Set inputFolder = fso.GetFolder(inputFolderPath)
Dim subFolder As Folder
Dim rowIndex As Long: rowIndex = 1
Dim columnIndex As Long: columnIndex = 1
For Each subFolder In inputFolder.SubFolders
Dim folderName As String
folderName = subFolder.Name
Dim splitFolderName() As String
splitFolderName = Split(folderName, "_")
Dim splitFolderNameElement As Variant
columnIndex = 1
For Each splitFolderNameElement In splitFolderName
Sheet1.Cells(rowIndex, columnIndex) = splitFolderNameElement
columnIndex = columnIndex + 1
Next
rowIndex = rowIndex + 1
Next
End Sub
你好thnx用于帮助…但在宏中运行时,它并没有选择文件夹………您能告诉我该怎么做吗?要调用此函数,您需要将文件夹路径作为参数传入。