从Excel列表创建文件夹

时间:2015-07-20 12:54:05

标签: excel vba excel-vba

我在excel表B2-B40中有地址。 C2-C40中的数字。这两列都用红色和绿色着色,在不同的行中。

我想要完成的是:

  1. 创建具有不同数字的主文件夹(C列)。每个主文件夹具有不同的唯一编号2,3,5,8等

  2. 在每个主文件夹中,有两个不同的文件夹,Red&绿色。即内部2个两个单独的文件夹,Red&绿色

  3. 在Numbered主文件夹内,然后是红色(或绿色)文件夹,该地址的文件夹(属于它)。例B2,地址是124 X通道,它在C2列中的相应数字是9。 C2为红色。

  4. 因此文件夹应创建为: " 9"在那里" Red"在那里" 124 x lane"。

    因此循环应读取所有地址并创建主文件夹,在这两个颜色文件夹内,并在所有相应的地址内部颜色和数字。

    我做的是(VBSCRIPT)

    ub Make_Directory()
    Dim MyRange As Range
    Dim Path As String
    Path = "C:\"
    MkDir Path & "test"
    Path = "C:\test\"
    'The next line is your list of names
    Set MyRange = Sheets("Sheet1").Range("B2:B40")
    On Error Resume Next
    For Each c In MyRange
    MkDir Path & c.Value
    Next
    On Error GoTo 0
    End Sub
    

    它所做的是它创建了所有带地址的文件夹,但所有文件夹都在里面。但我无法根据自己的需要对其进行修改。

    请帮助。

    提前致谢。

    Excel sheet I created

1 个答案:

答案 0 :(得分:2)

你需要添加/更改这样的东西。您根本没有查看C列的值,因此使用行/列引用的循环可能更有意义。

Sub Make_Directory()

Dim Path As String
Path = "C:\test"
MkDir Path
Path = Path & "\"

On Error Resume Next

For c = 2 to 40
    MkDir Path & Sheets("Sheet1").Cells(c, 3).Value
    If Sheets("Sheet1").Cells(c,2).Interior.Color = RGB(255,0,0) Then
        MkDir Path & Sheets("Sheet1").Cells(c, 3).Value & "\Red"
        MkDir Path & Sheets("Sheet1").Cells(c, 3).Value & "\Red\" & Sheets("Sheet1").Cells(c, 2).Value
    Else
        MkDir Path & Sheets("Sheet1").Cells(c, 3).Value & "\Green"
        MkDir Path & Sheets("Sheet1").Cells(c, 3).Value & "\Green\" & Sheets("Sheet1").Cells(c, 2).Value
    End If
Next c
On Error GoTo 0

End Sub