Создание папок на основе значений ячеек в Excel + создание гиперссылки

-2

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

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

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

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

Скриншот

Люк
источник
1
На какой операционной системе вы работаете? Окна? Mac? Какую версию Excel вы используете?
Прасанна
2
Что ты уже пробовал?
Аганю
Я нахожусь на Win 7 Pro, используя MS Excel 2010
Luc

Ответы:

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.

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

Burgi
источник
Я попытался исправить ваше форматирование . Не могли бы вы объяснить, почему ОП не может использовать \ или _символы?
Бурги
VBA работает для создания папок, но кажется, что \ также нельзя использовать. Удачи в создании гиперссылки в каждой папке?
Люк
@ Бурги, это объяснено в этой ссылке vlaurie.com/computers2/Articles/filenames.htm
@Luc \ соответствует родительской папке, вам следует сначала создать ее или изменить код VBA, чтобы он создавался раньше других папок