Создание структуры папок с путем, определенным в ячейке (или всплывающем окне)

1

Я новичок в использовании Excel VBA и хотел бы вы помочь мне найти решение.

Поэтому я пытаюсь создать таблицу Excel, которая создаст структуру папок в определенном месте.

Создание битовой структуры папок я решил с помощью кода из следующего:

Создание папок и подпапок с помощью макроса VBA

У меня проблема с определением местоположения в ячейке, я попытался использовать следующее для определения пути:

Dim strFolders As String
strFolders = Worksheets("Sheet1").Cells(7, "A").Value

который формирует этот код вместе

Sub CreateFolderStructure()
    Dim objRow As Range, objCell As Range, strFolders As String

    For Each objRow In ActiveSheet.UsedRange.Rows
        Dim strFolders As String
            strFolders = Worksheets("Sheet1").Cells(7, "A").Value
        For Each objCell In objRow.Cells
            strFolders = strFolders & "\" & objCell
        Next
        Shell ("cmd /c md " & Chr(34) & strFolders & Chr(34))
    Next
End Sub

К сожалению, это не так просто. Я получаю ошибку объявления дубликата, хотя я не понимаю, где (и почему, поэтому не стесняйтесь объяснять мне это).

Естественно, я ожидаю, что вставка пути в ячейку также создаст его как папку (или ошибку из-за '/'), поэтому я тоже ищу решение для этого (но я сосредоточен на проблеме прямо сейчас передо мной), я думал о создании всплывающего меню, в котором вы могли бы их определить, я не совсем уверен, насколько это сложно, но я все еще изучаю веревки прямо сейчас, поэтому мой фокус на что-то легкое на данный момент.

Тем временем я оставляю этот вопрос открытым, пока сам продолжаю искать решение, и если я найду ответ, я обязательно обновлю его!

Спасибо

Матеуш Домбковски
источник

Ответы:

0

Так как вы объявили strFoldersдважды, один раз с другими переменными, 2nd Rowа второй с Row 4, так что вы получаетеDuplicate declaration error

Удалите эту строку из кода, который вы найдете в строке 4.

 Dim strFolders As String 
Раджеш С
источник
#Mateusz, рад помочь вам, продолжайте спрашивать ☺
Rajesh S