[CDR X5-X8] как в VBA получить имя текущей папки

  • Автор темы Автор темы Erchizo
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Erchizo

Участник
Топикстартер
Сообщения
58
Реакции
1
Всем добрый день!
Существует необходимость подписи картинок на листе именем папки:
в первом случае - в которой сохранен файл
во втором случае - из которой импортирован файл
Через функцию GetCurrFolder() не получилось, необходимо запускать какие-то кореловские скрипты, которых VBA не видит.
ActiveDocument.PathName - тоже не то, он дает полный путь.
Заранее спасибо!
 
Бррр, а разве это не именно то, что вам надо? 'hmmm'
К сожалению не совсем то!
На выходе получаю "D:\Temp\Onix\13865\", а нужно просто "13865". Потом это название помещаю под картинкой.
Пример пути естественно с потолка, но в основном это очень длинные пути ((((, естественно они такие не нужны.
 
На выходе получаю "D:\Temp\Onix\13865\", а нужно просто "13865"
Брррррр!!!!!!
То есть, вам нужен не просто путь, а каталог нижнего уровня от пути????
Тогда это обычная простейшая задача парсения текстовой строки
 
Буду очень признателен. Сам не могу допетрить ((.
Left() - не то, Crop - убирает только пробелы.
 
Навскидку не помню есть ли такое в кореловском VBA но IMHO это стандарт
попробуйте Split
 
А почему Left, а не Right?
В кореле сплит должен работать Split string to values - OberonPlace.com Forums
Вообще эту функцию можно навелосипедить кучей разных способов.
Right и имелся ввиду, но он не подходит.
Изображения собираются из разных папок, как следствие длина пути у каждого фала разная.
Со Split, тоже не все так хорошо. Ну разобьет он мне весь путь на отдельные части по "\" но ведь мне нужно оставить только последнюю часть массива. Естественно после "сплитования" разных файлов будут разные массивы.
 
Код:
Sub fld()
Dim folders
fn = ActiveDocument.FullFileName
folders = Split(fn, "\")
MsgBox folders(UBound(folders) - 1)
End Sub
 
  • Спасибо
Реакции: splxgf и Erchizo
Шикарно. Спасибо большое!
Тема закрыта.
 
Комментарий модератора: Право на закрытие тем принадлежит модераторам. Им не требуются указания и разрешения на их закрытие. Даже то, что Вы являетесь ТопикСтартером (ТС) не означает того, что никому из участников форума не захочется когда-нибудь дополнить тему или задать дополнительные вопросы.
 
Статус
Закрыто для дальнейших ответов.