Сохранение гиперссылки в excel при перемещении документа
Я создаю на листе гиперссылку по следующей формуле:
Данная гиперссылка берет имя файла во втором столбце 4 строки и т.д. вниз.
При переносе на другой компьютер гиперссылка перестает работать. Как решить эту проблему? Может кто-то может подсказать.
При этом, ранее я делал гиперссылки вручную через меню "вставка" "Гиперссылка" и все работало при пересылке на другой компьютер.
[moder]Оформляйте формулы тегами
Кнопка fx[/moder]
Я создаю на листе гиперссылку по следующей формуле:
Данная гиперссылка берет имя файла во втором столбце 4 строки и т.д. вниз.
При переносе на другой компьютер гиперссылка перестает работать. Как решить эту проблему? Может кто-то может подсказать.
При этом, ранее я делал гиперссылки вручную через меню "вставка" "Гиперссылка" и все работало при пересылке на другой компьютер.
[moder]Оформляйте формулы тегами
Кнопка fx[/moder] Влад777
Я создаю на листе гиперссылку по следующей формуле:
Данная гиперссылка берет имя файла во втором столбце 4 строки и т.д. вниз.
При переносе на другой компьютер гиперссылка перестает работать. Как решить эту проблему? Может кто-то может подсказать.
При этом, ранее я делал гиперссылки вручную через меню "вставка" "Гиперссылка" и все работало при пересылке на другой компьютер.
[moder]Оформляйте формулы тегами
Кнопка fx[/moder] Автор - Влад777
Дата добавления - 12.01.2015 в 12:09
[/vba]
думаю, что & стоят не в тех местах, хотя повторюсь, что не силён в гиперссылках, да и вообще ими не пользовался никогда и не вникал, так что могу ошибаться.
[/vba]
думаю, что & стоят не в тех местах, хотя повторюсь, что не силён в гиперссылках, да и вообще ими не пользовался никогда и не вникал, так что могу ошибаться. VEKTORVSFREEMAN
"Опыт - это то, что получаешь, не получив того, что хотел"
[/vba]
думаю, что & стоят не в тех местах, хотя повторюсь, что не силён в гиперссылках, да и вообще ими не пользовался никогда и не вникал, так что могу ошибаться. Автор - VEKTORVSFREEMAN
Дата добавления - 12.01.2015 в 14:25
Именно такая папка C:\Documents and Settings\Абинов\Мои документы\Таможня\База\ на другом компьютере присутствует?
Именно такая папка C:\Documents and Settings\Абинов\Мои документы\Таможня\База\ на другом компьютере присутствует? Gustav
Выдает ошибку. Там где-то лишний знак "
Может быть можно подойти к этой проблеме через макрос, который бы присваивал гиперссылку каждой ячейке второго столбца, начиная с 4 строки, на файл в заданной директории с именем данной ячейки - по аналогии работы как через меню вставка, гиперссылка??
Я нашел такой макрос
Dim cells As Range
For Each cells In Range("a1:a10")
cells.Hyperlinks.Add Anchor:=cells, Address:=cells.Value, TextToDisplay:=cells.Value
Next cells
Данный макрос присваивает гиперссылку ячейкам первого столбца на одноименные файлы, при условии что они лежат в одной папке с ним. Может быть этот макрос можно модифицировать и задать адрес папки, где лежат файлы?
Выдает ошибку. Там где-то лишний знак "
Может быть можно подойти к этой проблеме через макрос, который бы присваивал гиперссылку каждой ячейке второго столбца, начиная с 4 строки, на файл в заданной директории с именем данной ячейки - по аналогии работы как через меню вставка, гиперссылка??
Я нашел такой макрос
Dim cells As Range
For Each cells In Range("a1:a10")
cells.Hyperlinks.Add Anchor:=cells, Address:=cells.Value, TextToDisplay:=cells.Value
Next cells
Данный макрос присваивает гиперссылку ячейкам первого столбца на одноименные файлы, при условии что они лежат в одной папке с ним. Может быть этот макрос можно модифицировать и задать адрес папки, где лежат файлы? Влад777
Может быть можно подойти к этой проблеме через макрос, который бы присваивал гиперссылку каждой ячейке второго столбца, начиная с 4 строки, на файл в заданной директории с именем данной ячейки - по аналогии работы как через меню вставка, гиперссылка??
Я нашел такой макрос
Dim cells As Range
For Each cells In Range("a1:a10")
cells.Hyperlinks.Add Anchor:=cells, Address:=cells.Value, TextToDisplay:=cells.Value
Next cells
Данный макрос присваивает гиперссылку ячейкам первого столбца на одноименные файлы, при условии что они лежат в одной папке с ним. Может быть этот макрос можно модифицировать и задать адрес папки, где лежат файлы? Автор - Влад777
Дата добавления - 12.01.2015 в 14:41
Нет, такой папки C:\Documents and Settings\Абинов\Мои документы\Таможня\База\ на другом компе нет. Тогда бы и с формулой проблем не было бы..
Нет, такой папки C:\Documents and Settings\Абинов\Мои документы\Таможня\База\ на другом компе нет. Тогда бы и с формулой проблем не было бы.. Влад777
В Microsoft Excel вы можете связать ячейку книги с другой книгой, используя формулу, которая ссылается на внешнюю книгу. При создании этой ссылки может использоваться относительный путь. С помощью относительных ссылок можно перемещать книги, не нарушая связь. В этой статье рассказывается о том, как с помощью Excel хранить ссылки на связанные книги в разных обстоятельствах.
Дополнительная информация
Как обрабатываются пути ссылок при открытии файла
При открытии в Excel файла, содержащего ссылки (связанная книга), она объединяет части ссылок, хранящиеся в файле, с необходимыми фрагментами текущего пути связанной книги.
Как сохраняются пути ссылок
Если путь к связанному файлу сохраняется в Excel, для определения того, что нужно сохранить, используются следующие правила:Примечание. Перемещение вверх по пути указывает на то, что вы ссылаетесь на папки, расположенные вне корневого диска или общего доступа. Если переместиться вниз по пути, это означает, что вы переходите ближе к корневому диску или к общему доступу.
Если связанный файл и исходный файл данных находятся на разных дисках, буква диска сохраняется с путем к файлу и имени файла.
Если связанный файл и исходный файл данных находятся в одной папке, сохраняется только имя файла.
Если файл исходных данных находится в папке, вложенной в ту же корневую папку, что и связанный файл, свойство хранится для указания корневой папки. Все части пути, к которым предоставлен общий доступ, не сохраняются. Например, если связанный файл C:\Mydir\Linked.xls зависит от C:\Mydir\Files\Source.xls, то единственной сохраненной частью пути является \Files\Source.xls.
Если исходный файл данных находится в папке, расположенной ниже связанного файла, свойство сохраняется, чтобы указать это. Например, связанный файл — C:\Mydir\Files\Myfile\Linked.xls, а исходный файл данных — C:\Mydir\Files\Source.xls. Excel хранит только \MyDir\Files\.. \Source.xls.Примечание. Это позволяет поддерживать ссылки при копировании связанного файла в дополнительную вложенную папку в папке, в которой находится исходный файл. Например, связанный файл — C:\Mydir\Files\Myfiles1\Linked.xls, а файл исходных данных — C:\Mydir\Files\Source.xls, связанный файл с именем Link. xls копируется из папки C:\Mydir\Files\Myfiles1 в папку C:\Mydir\Files\Myfiles2, а ссылка на C:\Mydir\Files\Source.xls сохраняется.
Если исходный файл данных находится в папке XLStart, в разделе " Каталог автозагрузки" или " Библиотека ", свойству записывается свойство, которое указывает на одну из этих папок, и сохраняется только имя файла.Примечание. В Excel распознаются две стандартные папки XLStart, из которых автоматически открываются файлы при запуске. Ниже указаны две папки.
Папка XLStart в папке установки Office, например C:\Program Files\Microsoft Office \Office\XLStart
Папка XLStart в профиле пользователя (например, C:\Documents and Settings \имя_пользователя\Application Data\Microsoft\Excel\XLStart
Папка XLStart в профиле пользователя — это Папка XLStart, которая будет храниться в качестве свойства ссылки. Если вы используете папку XLStart, которая находится в папке установки Office, эта папка XLStart будет обрабатываться так же, как и любая другая папка на жестком диске. Имя папки Office меняется между версиями Office. Например, имя папки Office — Office, Office10, Office11 или Office12 в зависимости от используемой версии Office. Изменение имени папки приводит к разрыву связей при переходе на компьютер, на котором установлена другая версия Excel, чем версия, в которой была установлена ссылка.
Важно отметить, что содержимое строки формул не обязательно должно быть сохранено. Например, если файл исходных данных закрыт, вы увидите полный путь к файлу, но может быть сохранено только имя файла.
Относительные и абсолютные ссылки
Ссылки на внешние книги создаются в определенном порядке, если это возможно. Это означает, что полный путь к исходному файлу данных не записывается, а только часть пути, связанная с связанной книгой. С помощью этого метода вы можете перемещать книги, не нарушая связи между ними. Однако ссылки остаются неизменными, только если книги остаются в одном месте относительно друг друга. Например, если связанный файл — C:\Mydir\Linked.xls, а файл источника данных — C:\Mydir\Files\Source.xls, вы можете переместить файлы на диск D, пока исходный файл по-прежнему находится во вложенной папке "файлы". Относительные ссылки могут приводить к возникновению проблем при перемещении связанного файла на другой компьютер, когда источник находится в одном месте.
Сопоставленные диски и UNC-имя
При связывании книги с исходными данными связь устанавливается на основе способа открытия книги. Если книга была открыта на подключенном диске, она будет создана с помощью подключенного диска. Ссылка останется в том случае, если книга с исходными данными будет открыта в будущем. Если файл исходного файла данных открыт с помощью пути в формате UNC, ссылка не будет возвращена на подключенный диск, даже если соответствующий диск доступен. Если в одном и том же файле есть ссылки UNC и сопоставленные диски, а исходные файлы открыты одновременно с конечным файлом, только те ссылки, которые соответствуют тому, как был открыт этот файл, будут реагировать на гиперссылку. В частности, если вы откроете файл на подключенном диске и измените значения в исходном файле, только ссылки, созданные для подключенного диска, будут немедленно обновлены. Ссылка, отображаемая в Excel, может выглядеть по-разному в зависимости от того, как была открыта книга. Возможно, эта ссылка соответствует корневому общему ресурсу UNC или букве корневого диска, которая использовалась для открытия файла.
Сценарии, которые могут привести к неправильной работе ссылок
Существует несколько причин, по которым связь между файлами может быть непреднамеренно облагаться, чтобы они указывали на ошибочные места. Ниже приведены два наиболее распространенных сценария. Сценарий 1:
Вы можете сопоставить диск с корневым каталогом общего доступа. Например, вы можете подключить диск Z к \ \сервер\поделиться\Folder1.
Вы создаете ссылки на книгу, которая хранится в сопоставленном расположении, после того как вы откроете файл через этот подключенный диск.
Вы открываете файл по UNC-пути.
Вследствие этого ссылка будет разорвана.
Если вы закрыли файл, не сохраняя его, ссылки не будут изменены. Тем не менее, если сохранить файл перед его закрытием, вы сохранит ссылки с текущим разорванным расположением. Папки между корнем общего доступа и сопоставленной папкой будут оставлены вне пути. В приведенном выше примере ссылка изменится на \ \сервер\Folder1. Другими словами, имя общего доступа исключается из пути. Сценарий 2.
Вы можете сопоставить диск с корневым каталогом общего доступа. Например, вы можете подключить диск Z к \ \сервер\поделиться\Folder1.
Вы открываете файл по UNC-пути или сопоставленному диску, подключенному к другой папке в общем доступе, например \ \сервер\поделиться\Folder2.
Как следствие, ссылка будет разорвана.
Если вы закрыли файл, не сохраняя его, ссылки не будут изменены. Тем не менее, если сохранить файл перед его закрытием, вы сохранит ссылки с текущим разорванным расположением. Папки между корнем общего доступа и сопоставленной папкой будут оставлены вне пути. В приведенном выше примере ссылка изменится на \ \сервер\folder1.
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще. Меньше
В этой статье описаны синтаксис формулы и использование функции ГИПЕРССЫЛКА в Microsoft Excel.
Описание
Функция ГИПЕРССЫЛКА создает ярлык для перехода в другое место в текущей книге или открытия документа, сохраненного на сетевом сервере, в интрасеть или в Интернете. Если щелкнуть ячейку с функцией ГИПЕРССЫЛКА, Excel к указанному расположению или откроется указанный документ.
Синтаксис
ГИПЕРССЫЛКА(адрес;[имя])
Аргументы функции ГИПЕРССЫЛКА описаны ниже.
адрес — обязательный аргумент. Путь к документу и имя файла, который нужно открыть. Адрес может ссылаться на определенное место в документе, например на ячейку или именованный диапазон листа или книги Excel либо на закладку в документе Microsoft Word. Путь может быть к файлу, который хранится на жестком диске. Путь также может быть универсальным соглашением об именовке (UNC) на сервере (в Microsoft Excel для Windows) или URL-адресом в Интернете или интрасети.
Обратите Excel в Интернете что функция ГИПЕРССЫЛКА действительна только для веб-адресов (URL-адресов). Link_location может быть текстовая строка, заключенная в кавычка, или ссылка на ячейку, содержаную ссылку в виде текстовой строки.
Понятное_имя — необязательный аргумент. Текст ссылки или числовое значение, отображаемое в ячейке. Имя отображается синим цветом с подчеркиванием. Если этот аргумент опущен, в ячейке в качестве текста ссылки отображается аргумент "адрес".
Аргумент "имя" может быть представлен значением, текстовой строкой, именем или ячейкой, содержащей текст или значение для перехода.
Замечания
Чтобы в Excel приложении выбрать ячейку с гиперссылкой, не переходя по ней, щелкните ячейку и удерживайте кнопку мыши, пока указатель не , а затем отпустите кнопку мыши. В Excel в Интернете выберите ячейку, щелкнув ее, когда указатель является стрелкой; перейти к пункту назначения гиперссылки, щелкнув, когда указатель является указателем руки.
Примеры
=ГИПЕРССЫЛКА("http://example.microsoft.com/report/budget report.xlsx", "Щелкните, чтобы просмотреть отчет")
Открывает книгу, сохраненную по адресу http://example.microsoft.com/report. В ячейке отображается текст "Щелкните, чтобы просмотреть отчет" в качестве текста ссылки.
=ГИПЕРССЫЛКА("[http://example.microsoft.com/report/budget report.xlsx]Годовой!F10"; D1)
=ГИПЕРССЫЛКА("[http://example.microsoft.com/report/budget report.xlsx]'Первый квартал'!ИтогиОтдел", "Щелкните, чтобы просмотреть итоги по отделу за первый квартал")
Создает гиперссылку на диапазон ИтогиОтдел на листе Первый квартал книги, сохраненной по адресу http://example.microsoft.com/report. В ячейке листа, содержащей гиперссылку, в качестве текста ссылки отобразится "Щелкните, чтобы вывести итоги по отделу за первый квартал".
=ГИПЕРССЫЛКА("http://example.microsoft.com/Annual Report.docx]КвартПриб", "Квартальный отчет о прибыли")
Отображает содержимое ячейки D5 в качестве текста ссылки и открывает книгу, сохраненную на сервере FINANCE в общей папке Statements. В данном примере используется путь в формате UNC.
Открывает книгу 1stqtr.xlsx, которая находится в каталоге Finance на жестком диске D. После этого выводится число, которое содержится в ячейке H10.
Создает гиперссылку на область Totals в другой (внешней) книге Mybook.xlsx.
=ГИПЕРССЫЛКА("[Книга1.xlsx]Лист1!A10";"Перейти на Лист1 > A10")
Чтобы перейти в другое место на текущем листе, укажите имя книги и имя листа, как в этом примере, где "Лист1" — текущий лист.
=ГИПЕРССЫЛКА("[Книга1.xlsx]Январь!A10";"Перейти на лист Январь > A10")
Чтобы перейти в место на другом листе, укажите имя книги и имя листа, как в этом примере, где "Январь" — другой лист в книге.
=ГИПЕРССЫЛКА(ЯЧЕЙКА("адрес",Январь!A1";"Перейти на лист Январь > A1")
Чтобы перейти в другое место на текущем листе без использования полной ссылки на лист ([Книга1.xlsx]), вы можете воспользоваться этой формулой, где ЯЧЕЙКА("адрес") возвращает текущее имя книги.
Чтобы быстро обновить все формулы на листе, использующие функцию ГИПЕРССЫЛКА с теми же аргументами, можно поместить целевой объект ссылки на тот же или другой лист, а затем использовать абсолютную ссылку на эту ячейку в качестве аргумента "адрес" в формулах с функцией ГИПЕРССЫЛКА. Изменения целевого объекта ссылки при этом будут немедленно отражаться в формулах.
Мне кажется я сошёл с ума!
У меня в ЗАКРЫТЫХ документах word/excel 2007 sp3 меняются гиперссылки.
Ситауция такова. Есть сетевая шара (папка из DFS), подключенная как диск (назовём его Е). В ней я создаю документ (ворд/эксель, неважно), в котором делаю гиперссылки на другие файлы с этого диска Е. Пока новый документ лежит на диске Е, всё замечательно. Но как только я копирую его на рабочий стол (в мои документы или посылаю по почте) все сделанные в файле гиперссылке изменяются. Прежним остаётся только название файла, на который идёт гиперссылка, а путь до него меняется. Правильная ссылка Е:\файл.xls, меняется на какой-то бред вида \файл.xls - это если я копирую файл с сетевого диска Е на рабочий стол. Если копировать на локальный диск D, то гиперссылка становится такой: D:\файл.xls
Это какой-то бред. Хорошо, ещё юзеры не заметили этого бага.
Как сделать чтобы ссылки в документах MS Office 2007 не менялись?
- Изменено GoodwiN 11 января 2012 г. 15:49 ошибка
- Изменен тип Vinokurov Yuriy Moderator 23 января 2012 г. 8:03
- Изменен тип GoodwiN 7 апреля 2015 г. 11:28 Вопрос опять возник, а решения так и нет
Ответы
Вы пишите, цитата: "Прошло 3 года. Office стал 2010 SP2, а проблема сохранилась. Всё ровно тоже самое как и в первом топике. Немногочисленные советы не помогают.".
Таким образом, ответ будет - НИКАК.
Решение:
Отсылать Руководству не сами отчёты, а ссылки на них. Например, 1 Отчёт Руководству, 2 Отчёт Руководству, 3 Отчёт Руководству.
Да, я Жук, три пары лапок и фасеточные глаза :))
- Помечено в качестве ответа Жук MVP, Moderator 26 апреля 2015 г. 12:30
Все ответы
Тоже самое. Всё чудесатие и чудесатие!
Я так понимаю, что это какой-то механизм отслеживания гиперссылок. Можно ето отключить?
Файл - Параметры - Дополнительно - раздел Общие - кнопка Параметры веб-документа - вкладка Файлы - снимаем галочку Обновлять ссылки при сохранении. NB: при работе с файлом путь ,вполне возможно, будет меняться - но при сохранении файла эти изменения не зафиксируются
Также попробуйте положить документ не на подмапленный диск, а просто на сетевой ресурс, заменить ссылки на абсолютные, как предложил Rainmib, после чего понаблюдать за ситуацией.
Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий
Follow us on Twitter
Вы же, пока используете, относительные ссылки. Можно конечно ещё попробовать использовать абсолютные ссылки.
Да, я Жук, три пары лапок и фасеточные глаза :))
Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий
Follow us on Twitter
Тема переведена в разряд обсуждений по причине отсутствия активности
Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий
Follow us on Twitter
Файл - Параметры - Дополнительно - раздел Общие - кнопка Параметры веб-документа - вкладка Файлы - снимаем галочку Обновлять ссылки при сохранении. NB: при работе с файлом путь ,вполне возможно, будет меняться - но при сохранении файла эти изменения не зафиксируются
Также попробуйте положить документ не на подмапленный диск, а просто на сетевой ресурс, заменить ссылки на абсолютные, как предложил Rainmib, после чего понаблюдать за ситуацией.
Хочу вернуться к этому вопросу
Прошло 3 года. Office стал 2010 SP2, а проблема сохранилась. Всё ровно тоже самое как и в первом топике. Немногочисленные советы не помогают.
Меняются гиперссылки не в закрытых документах Excel, Word, а при открывании в их новом расположении.
Дополнительная информация о гиперссылках в статье "Создание и удаление гиперссылок"
Да, я Жук, три пары лапок и фасеточные глаза :))
Меняются гиперссылки не в закрытых документах Excel, Word, а при открывании в их новом расположении.
Дополнительная информация о гиперссылках в статье "Создание и удаление гиперссылок"
Чудесно! Очень рад за прекрасные новые возморжности по отслеживанию местоположения файла. Но КАК ИХ ВЫКЛЮЧИТЬ?!
Начали разбираться. Оказывается старое волшебство вернулось! Word/Excel 2010 продолжает переделывать гиперссылки в документах. И, если честно, мне не важно при открытие это происходит или при закрытие. Скажите, как это выключить. Один раз и на всегда. Желательно через GPO, чтобы шарахнуть по всей компании правильной настройкой.
В общем вопрос, как отключить переделывание гиперссылок при открытии (или закрытии, неважно) документов MS Office 2010 SP2 в новом, старом и каком-либо другом возможном местоположении?
Народ, мне нужно хранить на сервере заархивированные директории, в корне которых будет лежать табличка, в ячейках которой будут прописаны коды документов (томов и книг рабочих проектов), в соседней - их названия, правее - гиперссылка на открытие.
Excel-таблица и документы лежат в одной папке и её подпапках.
По стандартному Ctrl+K прописывается только абсолютный путь от корня диска. А мне нужно ОТНОСИТЕЛЬНЫЙ - от места расположения таблицы со ссылкой.
ВОПРОС: Как в табличку прописать ОТНОСИТЕЛЬНЫЕ гиперссылки на файлы?
(надеюсь, файл-пример не нужен? )
Народ, мне нужно хранить на сервере заархивированные директории, в корне которых будет лежать табличка, в ячейках которой будут прописаны коды документов (томов и книг рабочих проектов), в соседней - их названия, правее - гиперссылка на открытие.
Excel-таблица и документы лежат в одной папке и её подпапках.
По стандартному Ctrl+K прописывается только абсолютный путь от корня диска. А мне нужно ОТНОСИТЕЛЬНЫЙ - от места расположения таблицы со ссылкой.
ВОПРОС: Как в табличку прописать ОТНОСИТЕЛЬНЫЕ гиперссылки на файлы?
(надеюсь, файл-пример не нужен? ) Alex_ST
С уважением,
Алексей
MS Excel 2003 - the best.
По стандартному Ctrl+K прописывается только абсолютный путь от корня диска. А мне нужно ОТНОСИТЕЛЬНЫЙ - от места расположения таблицы со ссылкой.
ВОПРОС: Как в табличку прописать ОТНОСИТЕЛЬНЫЕ гиперссылки на файлы?
(надеюсь, файл-пример не нужен? ) Автор - Alex_ST
Дата добавления - 28.11.2013 в 12:00
Леш, в ДОС текущая папка относительно обозначается точкой, папка уровнем выше - двумя точками. В гиперссылках не применял, не было потребы. Попробуй.
Леш, в ДОС текущая папка относительно обозначается точкой, папка уровнем выше - двумя точками. В гиперссылках не применял, не было потребы. Попробуй. KuklP
Саш, спасибо за пример.
Очень поучительно. Но, к сожалению, также и очень не удобно, т.к. директория не "плоская", а многоуровневая, с поддиректориями и к каждому документу ручками путь не подправишь.
Тут, наверное, нужно как-то так:
1. Создаёшь табличку со стандартными гиперссылками
2. Макросом в гиперссылках как-то меняешь абсолютный путь на относительный.
НО КАК? (ДОС я никогда тлком и не знал, а то, что знал - накрепко забыл, к сожалению)
Саш, спасибо за пример.
Очень поучительно. Но, к сожалению, также и очень не удобно, т.к. директория не "плоская", а многоуровневая, с поддиректориями и к каждому документу ручками путь не подправишь.
Тут, наверное, нужно как-то так:
1. Создаёшь табличку со стандартными гиперссылками
2. Макросом в гиперссылках как-то меняешь абсолютный путь на относительный.
НО КАК? (ДОС я никогда тлком и не знал, а то, что знал - накрепко забыл, к сожалению) Alex_ST
Дык, а в чем проблема-то?
Пробегаешься по всем файлам и папкам в текущей папке. Пока бегаешь, то ты же знаешь путь, где пробегаешь в данный момент, правильно? А если твой сборный файл лежит в корне, то все ГС будут иметь вид 222\ааааа\о5о4о5о4\Книга21.xlsx,
где 222\ааааа\о5о4о5о4 - это куча вложенных папок. А то, что находится выше, в данном случае, для ГС не важно. Вот и пиши последовательно путь, НАЧИНАЯ с того места, где лежит сам файл. Путь ВСЕГДА будет относительный.
Макрокодером так
[vba]
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="222\ааааа\о5о4о5о4\Книга21.xlsx", _
TextToDisplay:="222\ааааа\о5о4о5о4\Книга21.xlsx"
[/vba]
Кстати, если нужно выше, то вид такой (как уже совершенно верно Сергей выше написал)
..\Работа\035_1.xls
Дык, а в чем проблема-то?
Пробегаешься по всем файлам и папкам в текущей папке. Пока бегаешь, то ты же знаешь путь, где пробегаешь в данный момент, правильно? А если твой сборный файл лежит в корне, то все ГС будут иметь вид 222\ааааа\о5о4о5о4\Книга21.xlsx,
где 222\ааааа\о5о4о5о4 - это куча вложенных папок. А то, что находится выше, в данном случае, для ГС не важно. Вот и пиши последовательно путь, НАЧИНАЯ с того места, где лежит сам файл. Путь ВСЕГДА будет относительный.
Макрокодером так
[vba]
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="222\ааааа\о5о4о5о4\Книга21.xlsx", _
TextToDisplay:="222\ааааа\о5о4о5о4\Книга21.xlsx"
[/vba]
Кстати, если нужно выше, то вид такой (как уже совершенно верно Сергей выше написал)
..\Работа\035_1.xls _Boroda_
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="222\ааааа\о5о4о5о4\Книга21.xlsx", _
TextToDisplay:="222\ааааа\о5о4о5о4\Книга21.xlsx"
[/vba]
Кстати, если нужно выше, то вид такой (как уже совершенно верно Сергей выше написал)
..\Работа\035_1.xls Автор - _Boroda_
Дата добавления - 28.11.2013 в 12:53
Спасибо, ребята.
Пока файлов с десяток, макрос писать некогда.
А вот когда будет побольше, то можно будет, действительно, пройтись циклом по всем гиперссылкам и откоцать от них слева кусок, равный длине ThisWorkBook.Path для ссылок, у которых в начале нет ../
Да и для тех, где в начале стоит ../, тоже вычислить не проблема, хотя это в моём случае не нужно, т.к. файлы могут лежать либо рядом, либо глубже.
----------------------------------------------------
поторопился я, "перебдел"
Ничего писАть не нужно. Ссылки, оказывается, и так относительными получаются для файлов, лежащих рядом или глубже.
Вопрос снят.
Ещё раз спасибо.
Спасибо, ребята.
Пока файлов с десяток, макрос писать некогда.
А вот когда будет побольше, то можно будет, действительно, пройтись циклом по всем гиперссылкам и откоцать от них слева кусок, равный длине ThisWorkBook.Path для ссылок, у которых в начале нет ../
Да и для тех, где в начале стоит ../, тоже вычислить не проблема, хотя это в моём случае не нужно, т.к. файлы могут лежать либо рядом, либо глубже.
----------------------------------------------------
поторопился я, "перебдел"
Ничего писАть не нужно. Ссылки, оказывается, и так относительными получаются для файлов, лежащих рядом или глубже.
Вопрос снят.
Ещё раз спасибо. Alex_ST
С уважением,
Алексей
MS Excel 2003 - the best.
Да и для тех, где в начале стоит ../, тоже вычислить не проблема, хотя это в моём случае не нужно, т.к. файлы могут лежать либо рядом, либо глубже.
----------------------------------------------------
поторопился я, "перебдел"
Ничего писАть не нужно. Ссылки, оказывается, и так относительными получаются для файлов, лежащих рядом или глубже.
Вопрос снят.
Ещё раз спасибо. Автор - Alex_ST
Дата добавления - 28.11.2013 в 15:10
Читайте также: