use*_*595 3 vba microsoft-excel
我希望使用我创建的电子表格根据每列中的内容生成文件夹和子文件夹。
第一列是顶层,第二列是下一层(子文件夹),依此类推。
A B C D
1 TOP FOLDER 1 Sub Folder 1.1 Sub Folder 1.2 Sub Folder 1.3
2 TOP FOLDER 2 Sub Folder 2.1 Sub Folder 2.2 Sub Folder 2.3
3 TOP FOLDER 3 Sub Folder 3.1 Sub Folder 3.2 Sub Folder 3.3
Run Code Online (Sandbox Code Playgroud)
我已经尝试过另一个程序,它创建了文件夹,但将它们全部放在一个文件夹中!我需要它与子文件夹,但我认为一个问题可能是分离文件夹,这是一个例子:
我认为将子文件夹分成它们的父文件夹可能会有问题,因为它们在同一列中......
这将使用 VBA 创建一个文件夹结构。短而美丽。
Sub CreateFolderStructure()
Dim objRow as Range, objCell as Range, strFolders as String
For Each objRow In ActiveSheet.UsedRange.Rows
strFolders = "C:\myRootFolder"
For Each objCell In objRow.Cells
strFolders = strFolders & "\" & objCell
Next
Shell ("cmd /c md " & Chr(34) & strFolders & Chr(34))
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
没有错误处理!
"C:\myRootFolder\TOP FOLDER 1\SUB FOLDER 1.1\SUB FOLDER 1.2\SUB FOLDER 1.3"mkdir功能。Shell(cmd /c md)which 可以通过一个命令创建多个文件夹。如果文件夹已经存在,它也不会产生错误。这么漂亮的命令© ® " - & ' ^ ( ) @C:\root\\subfolder处理两个连续的反斜杠一样处理字符串chr(34))包裹了完整的结构| 归档时间: |
|
| 查看次数: |
42262 次 |
| 最近记录: |