Вызов команды:
MulTEx -группа Специальные -Особые возможности -Путь к файлу


Команда поможет вставить в ячейки имена всех выбранных файлов или одного конкретного, всех файлов в указанной папке и её подпапках, а так же создать список файлов и папок в виде активных гиперссылок. Плюс к этому команда может отбирать файлы на основании указанной маски(шаблона), что позволит отбирать либо файлы определенного типа, либо с определенными именами.
Для чего это может быть нужно? При использовании надстройки некоторые команды требуют указания полного пути к файлу или имен файлов(например команды: Пакетное переименование файлов, Отправка листа/книги по почте, Создание примечаний). С помощью команды Путь к файлу это можно сделать быстро и главное правильно.
Т.к. команда умеет создавать гиперссылки на файлы и папки, то можно создавать списки нужных файлов и папок для быстрого доступа к ним из одного листа.
Путь к файлу

Просматривать файлы:

  • только выбранные - после нажатия кнопки ОК появится диалоговое окно, в котором необходимо выбрать файлы для создания списка
  • все в папке - после нажатия кнопки ОК появится диалоговое окно выбора папки. Выбирается папка, файлы в которой необходимо просмотреть и создать список
    включая подпапки - доступно для пункта все в папке. Если установлен, то файлы будут просматриваться не только в указанной папке, но и во всех вложенных в неё папках до самой глубоко вложенной. Если отключен, то файлы будут просматриваться исключительно в указанной папке.

Отбирать файлы

  • все - будет создан список со всеми файлами без исключений
  • на основании маски - в данном случае в поле указывается шаблон и будут отбираться файлы, отвечающие маске шаблона. Например, если необходимо отбирать только файлы Excel, то можно указать маску: *.xls*. Если надо отбирать только файлы Word, содержащие в имени слово "инструкция", то маску можно задать как: *инструкция*.doc*.

Записать

    начиная с ячейки - указывается ячейка, начиная с которой будет записан результат. Если отобрано более одного файла/папки, то первый файл/папка записывается в указанную ячейку, а остальные в ячейки ниже. В каждой ячейке один файл/папка.

  • путь к папке каждого файла - в ячейки будут записаны пути к папке каждого отобранного файла. Имя самого файла в этом случае не записывается.
    исключить одинаковые папки - доступно при записи пути к папкам. Если установлен, то из результирующего списка папок будут исключены одинаковые пути к папкам. Может пригодиться для исключения задвоения путей, когда в одной папке находится несколько файлов для создания списка.
  • пути ко всем файлам - начиная с указанной ячейки на лист будут записаны полные пути к каждому файлу.
  • только имена файлов - будут записаны только имена файлов, без путей к папке. По умолчанию файлы записываются с зарегистрированным для них типом - расширением(файлы Excel: .xls, .xlsx, .xlsm, .xlst и т.д.)
    без расширения типа файла - доступно при записи имен файлов. В этом случае в ячейки записывается только имя файла, расширение файла не записывается.

Записать как гиперссылки - независимо от того, какой вариант записи выбран(пути к файлам или папкам), в ячейках можно создать гиперссылки на исходные файлы/папки. По нажатии на такую гиперссылку будет открыт исходный файл или папка. Файлы в этом случае открываются в программе, установленной по умолчанию для просмотра данного типа файлов. Например, файлы .doc будут открываться в Word, файлы .xls в Excel.

Loading

11 комментариев

  1. [quote]Во-вторых и в-третьих я еще не придумал, но может быть кому пригодится и для других целей.[/quote]
    Пригодится))
    часто бывает нужно в коде VBA прописывать путь к файлу, вручную и лень и ошибок можно наделать.
    А так - занес в ячейку, копи/паст и всех делов)) удобно
    Спасибо!

  2. Получить имя файла с полным путем можно просто введя в ячейку
    =ЯЧЕЙКА("имяфайла";A1)
    Получение только имени файла без пути - работа с текстовой строкой
    =ПРАВСИМВ(ЛЕВСИМВ(ЯЧЕЙКА("имяфайла";A1);ПОИСК("]";ЯЧЕЙКА("имяфайла";A1))-1);ДЛСТР(ЛЕВСИМВ(ЯЧЕЙКА("имяфайла";A1);ПОИСК("]";ЯЧЕЙКА("имяфайла";A1))-1))-ПОИСК("[";ЯЧЕЙКА("имяфайла";A1)))
    Команда ищет квадратные скобки, запоминает их положение в текстовой строке и обрезает по ним. Аналогично можно сделать и только путь. Это все ерунда!
    А вот как заставить Ексель сохранять в ссылках только имя файла без пути? Делаю ссылки - все пучком, после закрытия/открытия - все ссылки с путями и фиг два, что исправишь!

    1. Антон, в принципе все верно, но есть одно но...Ваши функции работают только с открытыми на данный момент книгами Excel. Как Вы функциями озвученными получите путь до закрытого файла? Да еще и текстового или файла картинки? Они этого не могут.
      Команда же делает это достаточно просто. Ну и плюс ко всему она предназначена для облегчения работы с другими функциями MulTEx(например отправки сообщений, создания примечаний и т.п.).

      За комментарий спасибо: кому-то вполне вероятно достаточно будет пути именно до текущего файла. И Вашу формулу можно сократить:
      =ПСТР(ЯЧЕЙКА("filename");ПОИСК("[";ЯЧЕЙКА("filename"))+1;ПОИСК("]";ЯЧЕЙКА("filename"))-ПОИСК("[";ЯЧЕЙКА("filename"))-1)

      Если закрыть файл, то пути к ним не убрать, т.к. Excel не узнает тогда из какой ячейки считывать информацию.

      1. Мои функции как раз для упрощения каких-то определенных задач. Я не претендовал на все знание или замену вашей утилиты. Просто сам тыкаюсь часто и порой такие очевидные вещи не сразу находишь. Если кому пригодится - на здоровье, нет - на нет и суда нет.
        По последнему предложение - если убрать пути то не будет знать из какой ячейки? Какая связь между путем к файлу и адресом ячейки? Или вы имеете в виду что не будет знать где файл с этой ячейкой? По идее имя файла есть и если не указан путь - программа должна искать в текущем каталоге. Интересно то, что если перенести оба файла (исходный и со ссылкой) в другую папку и открыть файл со ссылкой, то Ексель почти всегда сам меняет пути. Почти всегда...
        В общем странное нечто - офис от МС

  3. И можно ли разбить значения ячеек(по разделителю) используя диапазон, транспонируя значения по столбцам, но не в одну ячейку, а тоже в диапазон

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.