Профессиональные приемы работы в Microsoft Excel

Обмен опытом => Microsoft Excel => Тема начата: runner от 01.03.2019, 13:03

Название: Разный результат формулы ЯЧЕЙКА()
Отправлено: runner от 01.03.2019, 13:03
Доброго дня всем!

Файлы сохраняются в локальной сети на общем диске.
Цель использования формулы ЯЧЕЙКА() - получение ссылки на расположение папки, где находится файл.
Файл предназначен для рассылки, поэтому *.xls (1997-2003). Поддержка макросов нужна, так как используются.

В приложении Книга5.xlsx и Книга6xls

Результат функции ЯЧЕЙКА() в этих файлах, находящихся у меня в одной папке, выглядит по-разному:

\\velo-dc3\Files\Отдел гарантии и запчастей\Гарантийные заявки\[Книга5.xlsx]Лист1
и
I:\Отдел гарантии и запчастей\Гарантийные заявки\[Книга6.xls]Лист1

Первый при перенесении как текст автоматически трансформируется в ссылку, второй никак.
Забавно, что если оба файла открыты, подтверждение ячейки (F2,Enter) в одном, меняет результат в другом, и наоборот.

Вопрос: Как сделать,чтобы в *.xls результат был как в *.xlsx, то есть, начинался с \\?
Или, возможно по-другому - Как получить автоматическую рабочую ссылку на папку где сохранён файл?
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: vikttur от 01.03.2019, 13:22
ЯЧЕЙКА покажет полный путь к ячейке, с учетом имени книги и имени листа.
Только путь к книге:
=ЛЕВБ(ЯЧЕЙКА("имяфайла");ПОИСК("[";ЯЧЕЙКА("имяфайла"))-1)
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: runner от 01.03.2019, 14:03
Спасибо, но вопрос не в "хвосте", вопрос в начале
если начало воспроизводится так:     \\velo-dc3\Files\   всё ОК, а если так:     I:\   то ссылку не создать

Я копирую результат этой формулы и вставляю как значение в общий файл. В первом случае после(F2, Enter) содержимое превращается в активную ссылку, во втором случае - нет.
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: _Boroda_ от 01.03.2019, 14:07
Только не забывайте, что без второго аргумента функция ЯЧЕЙКА даст Вам имя не текущего файла, а того, в котором произошло последнее изменение. Я подробнее и с примером писал об этом здесь ь http://www.excelworld.ru/forum/10-10934-95014-16-1400871584 (http://www.excelworld.ru/forum/10-10934-95014-16-1400871584)

Другими словами, в Вашем случае нужно писать не
=ЯЧЕЙКА("имяфайла")
а
=ЯЧЕЙКА("имяфайла";A1)

А чтобы убрать I, то так
=ПОДСТАВИТЬ(ЯЧЕЙКА("имяфайла";A1);"I:";"\")
=ПОДСТАВИТЬ(ЯЧЕЙКА("filename";A1);"I:";"\")
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: runner от 01.03.2019, 14:12
Пробовал и так, и так - не влияет, результат тот же.
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: _Boroda_ от 01.03.2019, 14:39
Если Вы внимательно прочитаете текст по ссылке и попробуете поиграться с файлом, то поймете, что на результат не обязательно ВСЕГДА будет влиять. Но повлиять МОЖЕТ. И, как обычно, в самый неподходящий для этого момент
А по поводу "I:" - я дописал свой пост выше, Вы пробовали любую из двух нижних формул оттуда?
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: runner от 01.03.2019, 14:51
Если в качестве нового текста ставить не \ а \\velo-dc3\Files , то работает, но становится не универсальным, а привязанным к этому сетевому диску.

По сути I:\ и \\velo-dc3\Files\ два разных отображения/записи одного сетевого диска, но по какому принципу эти формы записи так по-разному используются - непонятно. Также непонятно как этот момент регулировать.


Насчёт второго аргумента в формуле - согласен, будет указан. Лучше пере-, чем недо-.
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: _Boroda_ от 01.03.2019, 15:53
По какому принципу - не знаю, нужно на Вашей машине поиграться. На моей машине на любом формате файла (xlsx, xlsm, xlsb, xls), расположенного в  ЯЧЕЙКА("filename";A1) дает первыми два слеша
А универсальную формулу вот, держите
="\"&ПСТР(ЯЧЕЙКА("filename";A1);ПОИСК("\";ЯЧЕЙКА("filename";A1);2);999)
Название: Re: Разный результат формулы ЯЧЕЙКА()
Отправлено: runner от 01.03.2019, 16:08
Всё же, дело не в двух слэшах... вернее, не только в них.
Одно и то же место в локальной сети может быть записано в двух отображениях I:\ и \\velo-dc3\Files\
А вот почему так и как этим пользоваться....?
Попробую IT -отдел напрячь, вдруг подскажут чего.
Будет результат - отпишусь.