Создание папок из списка excel
Добрый день!!
Очень нужна помощь "ЧАЙНИКУ" в написании макроса в VBA.
В кодах HTML немного понимаю, а тут ступор, темный лес и совсем ничего не понятно. Начал изучение Программирования на VBA, читаю книгу "John Walkenbach", но к сожалению время не на моей стороне!!
Причина "паники" в следующем: На работе уволился делопроизводитель, и на меня наловили его обязанности. После нового года приезжает проверка и соответственно все необходимо приводить в соответствие. В общем по каким то там нововведениям все расходные договора должны быть продублированы в электронном виде, то есть все оригиналы должны быть отсканированы и разложены по папочкам на сервере, а так же должна быть создана таблица в Exel со всей информацией по договорам и ссылками на места электронного хранения на сервере. Но уж не знаю по каким причинам, но этого ничего нет СОВСЕМ. Остался месяц до проверки, а там только сканировать недели на две, а создавать базу еще надо.
Дорогие ГУРУ, помогите, пожалуйста создать макрос для решения задачи.
Например у нас есть таблица следующего вида:
Контрагент | Номер договора | Дата договоа | Срок действия с | Срок действия по | Предмет договора | Характер договора |
АЛЬЯНС ООО | РЯЗ-315-17 | 30.11.2017 | 30.11.2017 | 31.12.2017 | Материалы и запасные части, покупные комплектующие изделия | Разовые |
- | РЯЗ-292-17 | 09.11.2017 | 09.11.2017 | 31.12.2017 | Материалы и запасные части, покупные комплектующие изделия | Разовые |
Благоустройство ООО | РЯЗ-223-14 | 01.04.2014 | 01.04.2014 | 31.12.2015 | Услуги сторонних организаций коммунального хозяйства | Постоянные |
- | РЯЗ-157-17 | 01.05.2017 | 01.05.2017 | 31.12.2018 | Услуги сторонних организаций коммунального хозяйства | Постоянные |
Водоканал г.Касимов МУП | РЯЗ-445-16 | 01.03.2016 | 01.03.2016 | 31.12.2017 | Услуги сторонних организаций коммунального хозяйства | Постоянные |
- | РЯЗ-444-16 | 16.06.2016 | 16.06.2016 | 31.12.2017 | Прочие материальные затраты | Разовые |
Исходя из содержимого столбцов макрос должен выполнять следующий алгоритм действий:
1. Проверка директории "Z:\ДОГОВОРЫ\РАСХОДНЫЕ" на наличие папок соответствующих ХАРАКТЕРАМ ДОГОВОРА 7-го столбца таблицы, если каких то папок нет, то создаются такие папки.
2. Проверка директорий "Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ" и "Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ" на наличие папок соответствующих ИМЕНАМ КОНТРАГЕНТОВ 1-го столбца таблицы, если каких то папок нет, то создаются такие папки, а в каждой из них создается папка "УЧРЕДИТЕЛЬНЫЕ ДОКУМЕНТЫ". После проверки создаются гиперссылки на папку "УЧРЕДИТЕЛЬНЫЕ ДОКУМЕНТЫ" действующую при нажатии на ИМЯ КОНТРАГЕНТА
3. Проверка директории "Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\ИМЯ КОНТРАГЕНТА" и "Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\ИМЯ КОНТРАГЕНТА" на наличие папок соответствующих НОМЕРАМ ДОГОВОРОВ 2-го столбца таблицы относящихся к каждому конкретному КОНТРАГЕНТУ, если каких то папок нет, то создаются такие папки, а в каждой из них создается папка "ИСХОДНЫЕ МАТЕРИАЛЫ". После проверки создаются гиперссылки на папку "НОМЕР ДОГОВОРА" действующую при нажатии на НОМЕР ДОГОВОРА.
В общем примерно вот так должна выглядеть директория:
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\АЛЬЯНС ООО\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\АЛЬЯНС ООО\УЧРЕДИТЕЛЬНЫЕ ДОКУМЕНТЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\АЛЬЯНС ООО\РЯЗ-315-17\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\АЛЬЯНС ООО\РЯЗ-315-17\ИСХОДНЫЕ МАТЕРИАЛЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\АЛЬЯНС ООО\РЯЗ-292-17\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\АЛЬЯНС ООО\РЯЗ-292-17\ИСХОДНЫЕ МАТЕРИАЛЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\Водоканал г.Касимов МУП\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\Водоканал г.Касимов МУП\УЧРЕДИТЕЛЬНЫЕ ДОКУМЕНТЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\Водоканал г.Касимов МУП\РЯЗ-444-16\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\РАЗОВЫЕ\Водоканал г.Касимов МУП\РЯЗ-444-16\ИСХОДНЫЕ МАТЕРИАЛЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Благоустройство ООО\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Благоустройство ООО\УЧРЕДИТЕЛЬНЫЕ ДОКУМЕНТЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Благоустройство ООО\РЯЗ-223-14\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Благоустройство ООО\РЯЗ-223-14\ИСХОДНЫЕ МАТЕРИАЛЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Благоустройство ООО\РЯЗ-157-17\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Благоустройство ООО\РЯЗ-157-17\ИСХОДНЫЕ МАТЕРИАЛЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Водоканал г.Касимов МУП\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Водоканал г.Касимов МУП\УЧРЕДИТЕЛЬНЫЕ ДОКУМЕНТЫ\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Водоканал г.Касимов МУП\РЯЗ-445-16\
Z:\ДОГОВОРЫ\РАСХОДНЫЕ\ПОСТОЯННЫЕ\Водоканал г.Касимов МУП\РЯЗ-445-16\ИСХОДНЫЕ МАТЕРИАЛЫ\
Все чего смог добиться за несколько последних дней, это создание папок в директории путем выделения области из нескольких столбцов.
Но таблица имеет кучу повторяющихся ячеек, что само по себе не удобно и занимает кучу времени на составление.
Вот так выглядит кусок этой таблицы:
Вы когда-нибудь пытались создать несколько папок и подпапок на основе значений ячеек в Excel? Эта статья поможет вам создать сразу несколько папок и подпапок из списка значений ячеек.
Создавайте папки на основе значений ячеек с помощью Kutools for Exce
Если вы просто хотите создать папки из списка значений ячеек, Kutools for ExcelАвтора Создание папок из содержимого ячеек может помочь вам быстро и легко создавать папки.
После установки Kutools for Excel, пожалуйста, сделайте следующее:
1. Выберите значения ячеек, на основе которых вы хотите создать папки.
2. Затем нажмите Кутулс Плюс > Импорт Экспорт > Создание папок из содержимого ячеек, см. снимок экрана:
3. В Создание папок из содержимого ячеек диалоговое окно, щелкните кнопку, чтобы выбрать каталог для размещения созданных папок, см. снимок экрана:
4. Затем нажмите Ok , все папки были созданы на основе значений ячеек в указанном каталоге, см. снимок экрана:
Создавайте папки и подпапки на основе значений ячеек с помощью Kutools for Excel
Для Создание папок из содержимого ячеек утилита, вы также можете создавать как папки, так и подпапки на основе содержимого ячеек.
Во-первых, вам необходимо ввести содержимое ячейки в ячейки, разделенные знаком косой черты, на основе которых вам нужно создать папки и подпапки, см. Следующий снимок экрана:
Затем вы можете применить Создание папок из содержимого ячейки функция для создания папок и подпапок.
1. Выберите значения ячеек, на основе которых вы хотите создать папки и подпапки.
2. Затем нажмите Кутулс Плюс > Импорт Экспорт > Создание папок из содержимого ячеек для открытия Создание папок из содержимого ячеек диалоговое окно.
3. В диалоговом окне щелкните кнопку, чтобы выбрать каталог для размещения созданных папок и подпапок, см. снимок экрана:
4. Затем нажмите Ok кнопки, папки и подпапки были созданы сразу на основе значений ячеек, см. снимок экрана:
Демо: создание папок и подпапок на основе значений ячеек с помощью Kutools for Excel
Kutools for Excel: с более чем 300 удобными надстройками Excel, которые можно попробовать бесплатно без ограничений в течение 30 дней. Загрузите и бесплатную пробную версию прямо сейчас!
Как быстро создавать папки на основе значений ячеек в Excel?
Предположим, у вас есть список имен сотрудников в диапазоне рабочего листа, и теперь вы хотите создать несколько папок для каждого из них в ячейках для записи их информации. Если вы будете создавать папки одну за другой, это займет много времени. Но как быстро создать эти папки? Сегодня я расскажу вам несколько простых приемов:
Быстро создавайте папки на основе значений ячеек с помощью Kutools for Excel
Создавать папки на основе значений ячеек с кодом VBA
Например, у меня есть диапазон имен на листе, я хочу создать папки для каждого из них и сохранить их по указанному пути, с кодом VBA я могу завершить эту задачу.
1. Поместите активную книгу в определенный каталог, в который вы поместите созданные папки. Откройте книгу и выберите диапазон ячеек, который вы хотите использовать.
2. Нажмите разработчик > Визуальный Бейсик, Новый Microsoft Visual Basic для приложений появится окно, щелкните Вставить > Модули, и введите в модуль следующий код:
Код VBA: создание папок на основе значений ячеек
3. Нажмите кнопку для выполнения кода. Все выбранные ячейки были созданы в папки со своими значениями. И папки помещаются в путь так же, как активная книга. Смотрите скриншот:
Быстро создавайте папки на основе значений ячеек с помощью Kutools for Excel
Вам легко и удобно создавать папки на основе значений ячеек, если вы используете инструмент - Kutools for Excel.
После установки Kutools for Excel, сделайте следующее: (Бесплатная загрузка Kutools for Excel прямо сейчас!)
1. Выберите диапазон, в котором вы хотите создать папки.
2. Нажмите Кутулс Плюс > Импорт / Экспорт > Создание папок из содержимого ячеек…, См. Снимок экрана:
3. В Создание папок из содержимого ячеек диалоговое окно, нажмите кнопку, чтобы указать путь, по которому вы хотите сохранить папки. Видно скриншот:
4. Нажмите OK. И окно подсказки напомнит вам, сколько папок было создано. Смотрите скриншот:
5. Нажмите OK. И все значения в выбранном диапазоне были созданы папками в указанной папке.
Перечислить все имена файлов из папки в лист
Вот утилита в Kutools for Excel - Список имен файлов может перечислить все имена файлов папки на листе, если он вам интересен, продолжайте читать.
После установки Kutools for Excel, сделайте следующее: (Бесплатная загрузка Kutools for Excel прямо сейчас!)
1. Нажмите Кутулс Плюс > Импорт/Экспорт > Список имен файлов.
2. в Список имен файлов диалоговом окне выберите папку, в которой вы хотите отобразить ее файлы, установите флажок Все файлы or Указывать вариант, как вам нужно в Тип файлов sдействие.
img src = "https: // cdn.extendoffice.com / images / stories / doc-excel / create-folder / doc-create-folder-6.jpg "alt =" doc create folder 6 "/>
3. Нажмите Okсоздается новый лист со всеми именами файлов и некоторой относительной информацией.
Доброго дня! Есть 2 вопроса)
1. Имеется таблица Excel вида:
Малышева 8 Марта Восточная
558784 16794 989
583107 38427 93074
3977619 46592 425452
3977627 84070 4658827
4205923 84780 5352510
можно ли создать макрос который будет создавать скажем в папке С:\Reestr
подпапки с именами столбцов.
2. Текст в ячейках ниже - название pdf файлов лежащих в C:\in
можно ли дописать первый макрос так что-бы при его запуске
файлы из "In" перемещались в созданный каталог с именем столбца.
Ручками все это делать совсем не вариант, т.к. пакость каждый месяц и
состоит из ~30000 названий файлов)))
Создание папок с именами ячеек Excel
Простите если пишу не в этот раздел. Помогите пожалуйсто. В програмировании полный ноль.
Создание папок с именами, взятыми из содержимого файлов
Добрый день! Такая задача - есть файлы с расширением .las (открываются блокнотом). В них нужно.
Создание папок с именами, записанными в текстовом файле
Здравствуйте. Помогите пожалуйста решить вот такую задачу. Есть .txt файл, в котором построчно.
Создание папок на FTP-сервере с именами, являющимися IP-адресами компьютеров
Здравствуйте дорогие форумчане! Никак не могу решить одну проблему и последняя надежда на Вас. Мне.
Решение
Пробуйте. Если папку создать не удалось, ячейка будет покрашена. Если файл переместить не удалось, ячейка будет покрашена. Макрос рассчитан на то, что в таблице имена файлов без расширения, т.е. записи "558784" соответствует файл "558784.pdf". Если это не так, поправьте 15 строку.
Здравствуйте, я может туплю. но схожая задача, только немного иначе.
необходимо создать папки с именами столбцов и в них подпапки с именами строк относящихся к столбцу. Как это сделать?
Если платно, сколько стоит с возможностью доработки
Создание папок с именами, соответсвующими расширениям имеющихся файлов, но без начальной точки
Создаю папки в powershell для файлов с разными расширениями.Название папок идет как название.
txt файл с именами папок внутри самих папок (в кодировке 1251)
Добрый вечер ) Есть несколько сотен папок, в каждой из которых нужно создать файл album.txt в.
Создание папок с именами заданных файлов и перемещение этих файлов в созданные папки
Подскажите пожалуйста как по названиям файлов txt создать папки и положить в каждую из папок файл с.
Сравнение файлов в папке и создание папок с именами файлов
Нужно пройтись по папке, если есть картинка с названием, но нет папки с таким же названием, создать.
Создание папок в VBA Excel
Добрый день!Пожалуйста помогите с VBA Exсel 1.При начале нового дня создать новую папку с именем.
Простите если пишу не в этот раздел.
Помогите пожалуйсто.
В програмировании полный ноль.
Суть такова: есть таблица Excel, в одной колонке перечесляются данные, около 6000 ячеек, необходимо создать пустые папки с именами этих ячеек. если вручную, я свихнусь на двухсотой.
Создание папок с именами столбцов в Excel
Доброго дня! Есть 2 вопроса) 1. Имеется таблица Excel вида: Малышева 8 Марта Восточная.
Создание папок в VBA Excel
Добрый день!Пожалуйста помогите с VBA Exсel 1.При начале нового дня создать новую папку с именем.
Создание папок VBA Excel
Добрый день!Пожалуйста помогите с VBA Exсel 1.При начале нового дня создать новую папку с именем.
Excel Создание коллекции классов при выделении ячеек
Доброго времени! Подскажите неграмотному в ООП, каким образом можно создать несколько классов для.
Blakprizrak,
Откройте пустой файл Excel.
Сервис - Макрос - Начать запись - Сохранить в "Личная книга макросов" - ОК.
Введите букву "а" и нажмите Enter.
Сервис - Макрос - Остановить запись.
Сервис - Макрос - Редактор Visual Basic. Откроется редактор Visual Basic.
2 щ. левой кн. мыши по PERSONAL.XLS.
Щ. пр. кн. мыши по PERSONAL.XLS - Insert - Module.
Скопируйте с этого форума код, который написали вам, перейдите в редактор Visual Basic и вставьте текст в правую область, где мигает курсор
В 4 строке кода укажите место, где должны создавать папки:
Сохраните изменения.
Вставьте курсор в любое место кода и нажмите стрелку на панели инструментов, чтобы запустить код.
В выбранной вами папке должно появится 3 папки: Лист1, Лист2 и Лист3.
Если не появились, то может быть путь указали неправильно в коде.
Спасибо! Но я "чайник" во всем этом, можно попроще обьяснить как этим пользоваться, буду благодарен.
Добавлено через 10 минут
Blakprizrak,
Откройте пустой файл Excel.
Сервис - Макрос - Начать запись - Сохранить в "Личная книга макросов" - ОК.
Введите букву "а" и нажмите Enter.
Сервис - Макрос - Остановить запись.
Сервис - Макрос - Редактор Visual Basic. Откроется редактор Visual Basic.
2 щ. левой кн. мыши по PERSONAL.XLS.
Щ. пр. кн. мыши по PERSONAL.XLS - Insert - Module.
Скопируйте с этого форума код, который написали вам, перейдите в редактор Visual Basic и вставьте текст в правую область, где мигает курсор
В 4 строке кода укажите место, где должны создавать папки:
Сохраните изменения.
Вставьте курсор в любое место кода и нажмите стрелку на панели инструментов, чтобы запустить код.
В выбранной вами папке должно появится 3 папки: Лист1, Лист2 и Лист3.
Если не появились, то может быть путь указали неправильно в коде.
Простите, туплю, забыл после названия папки наклонную поставить. Спасибо, спасли меня от психушки, сегодня пробывал вручную, на 50 моя крыша помохала мне ручкой
Добавлено через 1 час 37 минут
Все-таки я допустил неточность.
Если сделать обычную гиперссылку на папку "1" из ячейки с данными 1, то при условии перемещения папки "Объект", содержащей Экселевский файл и папку "Фотографии", гиперссылки сохраняются. Проблема только в том, что бы автоматизировать присвоение гиперссылок ячейкам с другими данными (на подобии как " =ГИПЕРССЫЛКА("D:\Объект\Фотографии\"&A7&"") " и протянуть вниз). Ибо при наличии порядка 300 ячеек с данными, присваивать каждой гиперссылку вручную. а папок "Объект" порядка сотни.
Добавлено через 22 минуты
И еще один вопрос, что нужно изменить в коде макроса по созданию папок, что бы, например папка Фотографии и вложенные в нее папки с именами из Экселевского файла, создавались при запуске макроса в той директории где в данный момент находится папка?
Всем привет, у меня задача схожая но есть нюанс
мне необходимо чтобы создавалась папка с названием из ячейки которая только что изменилась.
Например, я вписал в новую ячейку название контрагента Рога и Копыта в соседней ячейке указал форму собственности ООО перешел к следующей ячейке, в этот момент на диске С: создается папка С:\Рога и копыта, ООО\ то есть я вижу из предыдущих записей как создаются папки но не могу найти инфы как это сделать на вновь создаваемые ячейки?
Как указать адрес ячейки не абсолютно, вида Range([A1], [A65536].End(xlUp)) а относительно положения выделенной ячейки? Например у меня выделена ячейка P4 соответственно и ячейки для названия папки будут T4+E4
Читайте также: