-2

У меня есть следующие значения ячеек (столбец FOLDERNAME), для которых я хочу автоматически создать папку в моей текущей активной электронной таблице.

Как это сделать, это мой первый вопрос?

Внутри каждой папки я бы хотел, чтобы следующее значение (столбец DRAWING_FILE) отображалось в виде гиперссылки.

Как это сделать, это мой второй вопрос?

Скриншот

1 ответ1

1
Sub MakeFolders()
    Dim Rng As Range
    Dim maxRows, maxCols, r, c As Integer
    Set Rng = Selection
    maxRows = Rng.Rows.Count
    maxCols = Rng.Columns.Count
    For c = 1 To maxCols
    r = 1
    Do While r <= maxRows
        If Len(Dir(ActiveWorkbook.Path & "\" & Rng(r, c), vbDirectory)) = 0 Then
            MkDir (ActiveWorkbook.Path & "\" & Rng(r, c))
            On Error Resume Next
        End If
        r = r + 1
    Loop
   Next c
End Sub

Этот VBA предназначен для создания папок, но вы должны выбрать ячейки, которые содержат имена папок перед запуском этого кода. Также вы не можете написать / и \ в Windows, вы можете использовать \ для папок, но не имена папок

Зарезервированные персонажи и имена

Наиболее распространенные символы могут использоваться в именах файлов. Однако следующие символы зарезервированы и не могут использоваться в имени файла:

< > : " / \ | ? *

Кроме того, ни пробел, ни точка не могут использоваться в конце имени. Кроме того, файлы не могут иметь следующие зарезервированные имена устройств: CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7 LPT8 и LPT9. Обратите внимание, что дело не имеет значения в Windows.

Объясняется по этой ссылке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .