Vba 选择单元格时创建文件夹和子文件夹

Vba 选择单元格时创建文件夹和子文件夹,vba,button,subdirectory,create-directory,Vba,Button,Subdirectory,Create Directory,我是VBA的新手,所以我希望你能帮我解决这个问题。 我想在给定路径内创建一个文件夹。在文件夹中,我想要一个子文件夹。文件夹的名称将显示在excel工作表的A列中,子文件夹的名称将显示在B列中。路径将在C列中 我希望能够点击D列上的一个单元格,激活一个宏,然后创建文件夹和子文件夹。我希望能够通过使用以下代码实现这一点: Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Application.Inters

我是VBA的新手,所以我希望你能帮我解决这个问题。 我想在给定路径内创建一个文件夹。在文件夹中,我想要一个子文件夹。文件夹的名称将显示在excel工作表的A列中,子文件夹的名称将显示在B列中。路径将在C列中

我希望能够点击D列上的一个单元格,激活一个宏,然后创建文件夹和子文件夹。我希望能够通过使用以下代码实现这一点:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
   If Not Application.Intersect(Target, Range("c2:c10000")) Is Nothing Then Call CreatePath
End Sub
所以我需要CreatePath函数。当在列D上选择一个单元格时,CreatePath函数应该从列D中标识所选单元格的行,从该行获取文件夹、子文件夹和路径的相应名称,并创建文件夹和子文件夹。 你知道这个函数应该是什么样子吗?请记住,我两天前开始使用VBA,所以我的技术非常有限。
谢谢大家的支持。

你可以这样做

Sub CreateFoldersandSubFolders()

'Execute next line in case of error.
On Error Resume Next

'Loop through all the cells  in column 1 in Active Sheet.
For i = 1 To ActiveSheet.UsedRange.Rows.Count

'Name of the Folder
sFolderPath = Cells(i, 1)  'Replace This.Workbook.Path with any location Example "C:\" & Cells(i,1)

'Creating Folder Using Shell Function
Shell "cmd /c mkdir """ & sFolderPath & """", vbHide 'It will Execute Dos Command and use MKDIR to Make Directory of sFolderPath Value

'To continue the Loop
Next i

'Displaying Message
MsgBox "Folders Created"

End Sub
我的设置:

代码运行后:


也许先尝试寻找答案?如果你谷歌Excel vba创建文件夹,这是第一个结果之一:谢谢,阿什。您的代码正在从设置中的列A创建所有给定路径。我只想创建A列与我选择的行的交点所给出的路径。您可以过滤掉不需要的行。这就是你所说的吗?在Excel安装中,我会把单元格C1:C3看作是宏的触发器。所以每次我从C列中选择一个单元格时,宏都会触发。这将通过使用专用子工作表来实现。\u选择更改请参阅我的第一篇文章。现在,当选择一个C1:C3单元格时,代码将从单元格A1:A3创建所有路径。我需要的是只创建在所选C单元格的行和A列之间的交点处找到的路径。例如,如果我选择C2行,则只应创建A2中的路径。如果我选择C3,则只选择A3的路径,依此类推。