Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
переход к файлу по гиперссылке по короткому пути
 
Заранее извините, если вопрос глупый, не профи в программировании, просто сложилась такая ситуация, что нужно очень срочно сделать, сегодня.
Вопрос вот в чем. Есть директория с файлами, я извлекаю оттуда файлы и в столбце А на листе экселя появляются имена файлов, а в столбце В пути к ним. Путь - гиперссылка, при переходе по ней открывается файл. Но мне нужно не так. Необходимо чтобы файл можно было открыть просто нажав на имя, т.е. сделав гиперссылку из имени. Встроенные инструменты типа "=ГИПЕРССЫЛКА()" не подходят. нужен код на VBA. Это очень срочно, помогите пожалуйста
 
marusnya, правила читали? Или Вы думаете что можно написать
Цитата
marusnya пишет:
нужен код на VBA
на все случаи жизни не видя примера файла? Могу только дать совет - воспользуйтесь макрорекордером.
Я сам - дурнее всякого примера! ...
 
С этим я справилась. теперь проблема в том, что перечень всех файлов должен появляться в listbox (и появляется), но нужно чтобы при выделении файла в окне listbox и нажатии кнопки "открыть", открывался этот файл, но пишет "не удается найти указанный файл"
 
прикрепляю файл
Изменено: marusnya - 7 Июл 2013 20:47:59
 
спасибо большое за внимание к проблеме
 
Навскидку:
Код
Private Sub CommandButton47_Click()

Dim navURL, ПутьКПапке as string
ПутьКПапке = "G:\Выписки\ГПБ\валюта (доходы)\"
navURL = ListBox10.Value
Workbooks.Open ПутьКПапке & navURL
End Sub

или Ваш код, но с путем к папке:
Код
Private Sub CommandButton47_Click()
Dim navURL, ПутьКПапке As String
ПутьКПапке = "G:\Выписки\ГПБ\валюта (доходы)\"
navURL = ListBox10.Value
ActiveWorkbook.FollowHyperlink Address:=ПутьКПапке & navURL, NewWindow:=True
End Sub
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
"Не удалось найти файл. Проверьте правильность ввода имени и расположения файла"
:(
 
Некорректно вставилось - изменил коды в сообщении выше.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
marusnya пишет:
столбце А на листе экселя появляются имена файлов, а в столбце В пути к ним
И где это в файле? зато там есть форма, о к-рой в топике ни слова.
Код
Private Sub CommandButton47_Click()
    Dim navURL, r As Range
    navURL = ListBox10.Value
    Set r = ActiveSheet.[a:a].Find(navURL)
    If Not r Is Nothing Then
        navURL = r.Hyperlinks(1).Address
        ActiveWorkbook.FollowHyperlink Address:=navURL, NewWindow:=True
    End If
End Sub
Только вместо ActiveSheet используйте переменную ссылающуюся на нужный лист.
Я сам - дурнее всякого примера! ...
 
да, так работает, спасибо большое)
правда одну и ту же кнопку "открыть" нужно будет использовать для файлов из 3х разных директорий, но видимо это невозможно, изменю интерфейс)
спасибо большое!вы меня очень выручили!
 
Дим, там ведь есть и расходы и прочая. И все обрабатывается в одной форме. Жестко задавать путь не выйдет.
Я сам - дурнее всякого примера! ...
 
KuklP, извините, описание написала прежде, чем подкорректировала сам файл:)

да, все работает так, как нужно!
огромное спасибо, вы даже не представляете как вы меня выручили! :)
 
Спасибо всем огромное еще раз!
Извините за беспокойство :oops:
 
Цитата
marusnya пишет:
правда одну и ту же кнопку "открыть" нужно будет использовать для файлов из 3х разных директорий, но видимо это невозможно, изменю интерфейс)
Почему же не выйдет!
Цитата
KuklP пишет:
Только вместо ActiveSheet используйте переменную ссылающуюся на нужный лист.
Я сам - дурнее всякого примера! ...
Страницы: 1
Читают тему (гостей: 1)