Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.06.2010, 12:45   #1
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию путь к файлу

Добрый день. Как получить полный путь к файлу стандартными средствами Excel?
Jaroslav вне форума Ответить с цитированием
Старый 30.06.2010, 13:06   #2
mchip
Форумчанин
 
Регистрация: 24.06.2008
Сообщений: 516
По умолчанию

в 2007 Excel
Код:
=ИНФОРМ("каталог")
Можно сделать все! Было бы время, да деньги...
mchip вне форума Ответить с цитированием
Старый 30.06.2010, 13:52   #3
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

У меня стоит 2003 Excel
Jaroslav вне форума Ответить с цитированием
Старый 30.06.2010, 14:01   #4
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Спасибо, mchip. В 2003 Excel также есть такая функция.
Jaroslav вне форума Ответить с цитированием
Старый 30.06.2010, 14:54   #5
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Функция ИНФОРМ возвращает рабочий каталог. А мне нужно получить полный путь к активной книге.
В VBA есть функция ActiveWorkbook.Path. Как без помощи VBA узнать путь в активной книге? Может, нужно создать пользовательскую функцию? Подскажите как это сделать и где ее записать, чтобы эта функция была доступна для всех файлов Excel.
Jaroslav вне форума Ответить с цитированием
Старый 30.06.2010, 15:43   #6
EugeneS
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 472
По умолчанию

можно, например, с помощью пользовательской функции, см. вложение

Сохраните файл на машине, откройте, далее Мастер функций - Определенные пользователем - ПУТЬ. У данной функции нет аргументов, она указываете путь данной книги.

Для того, чтобы функция была доступна Вам в любом файле модуль с функцией необходимо перенести в Личную книгу макросов (если её у Вас нет, её необходимо создать записав любой макрос (Сервис - Макросы - Начать запись) и сохранив его в Личной книге, которая и будет создана).

Также можно решить такой вопрос с помощью создания надстройки Эксель.
Вложения
Тип файла: zip Path.zip (5.5 Кб, 42 просмотров)
EugeneS вне форума Ответить с цитированием
Старый 30.06.2010, 16:19   #7
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Спасибо, EugeneS
Jaroslav вне форума Ответить с цитированием
Старый 02.07.2010, 11:19   #8
EugeneS
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 472
По умолчанию

Примечание:

При переносе в личную книгу макросов необходимо использовать не ThisWorkbook, а ActiveWorkbook иначе результатом будет путь личной книги макросов в которой сохранен модуль с функцией.

Код:
Function ПУТЬ()
ПУТЬ = ActiveWorkbook.Path
End Function
EugeneS вне форума Ответить с цитированием
Старый 02.07.2010, 15:48   #9
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Спасибо, я так и сделал
Jaroslav вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Путь к файлу Roman_Xxx Win Api 1 24.05.2010 21:13
путь к файлу vedro-compota Общие вопросы по программированию, компьютерный форум 2 14.04.2010 13:47
Путь к файлу Belokuraya Microsoft Office Excel 17 12.08.2009 17:30
Путь к файлу Slash Общие вопросы Delphi 3 27.11.2008 14:02
Путь к файлу Баламут Win Api 12 14.05.2008 13:27