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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2010, 11:39   #1
KOM-STAR
 
Регистрация: 05.04.2010
Сообщений: 5
По умолчанию Excel не сохраняет ссылки на .jpg, если в ссылке есть русские символы

Добрый день. Собственно, весь вопрос в сабже.

Есть документ, в который через Вставку гиперссылки указывается ссылка на картинку (.jpg) на сетевом ресурсе, вида \\server\Общая_папка\Папка1\Папка2\ картинка.jpg

При работе с документом до закрытия всё нормально - при нажатии на ссылку открывается картинка. Когда документ сохраняется и закрывается, то при повторном открытии ссылка заменяется на следующее:

\..\..\Общая%Папка\Папка1\%Папка2\% Картинка.jpg

Заметил, что если путь указать как \\server\Share_Folder\Folder1\Folde r1\Picture.jpg (т.е если в пути присутствуют только английские буквы) то всё в порядке - ссылка сохраняется нормально в англ. варианте.

Какие мысли - что это может быть? Пару недель назад всё было нормально - произошло на первый взгляд самопроизвольно.
KOM-STAR вне форума Ответить с цитированием
Старый 05.04.2010, 12:30   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
то при повторном открытии ссылка заменяется на следующее:

\..\..\Общая%Папка\Папка1\%Папка2\% Картинка.jpg
Вообще-то, это нормальное поведение для Excel
(он после закрытия файла старается заменить абсолютные ссылки на относительные)

Цитата:
Пару недель назад всё было нормально - произошло на первый взгляд самопроизвольно.
Может, Вы просто внимания не обращали?
Или файл раньше вы сохраняли в другом месте на диске (в другой папке)?


PS: Если не секрет, какая разница, какой путь указан у гиперссылки?
Разве не главное, чтобы гиперссылки корректно работали? (они же ведь продолжают работать...)

А если этот кривой путь (типа \..\..\Общая%Папка\Папка1\%) отображается в ячейке, так туда можно поместить любой текст - гиперссылка сохранится.
EducatedFool вне форума Ответить с цитированием
Старый 05.04.2010, 13:16   #3
KOM-STAR
 
Регистрация: 05.04.2010
Сообщений: 5
По умолчанию

Цитата:
Вообще-то, это нормальное поведение для Excel
(он после закрытия файла старается заменить абсолютные ссылки на относительные)
Насколько понимаю, это относительная ссылка на старое местоположение.

Цитата:
Может, Вы просто внимания не обращали?
Или файл раньше вы сохраняли в другом месте на диске (в другой папке)?
Да, это так и есть. Раньше xls-файл находился в той же корневой папке, где и папки с картинками.

Цитата:
PS: Если не секрет, какая разница, какой путь указан у гиперссылки?
Разве не главное, чтобы гиперссылки корректно работали? (они же ведь продолжают работать...)
Вероятно, я некорректно выразился - прошу прощения. В данный момент после сохранения (закрыть и открыть документ) ссылка вида \..\%ссылка%\ не работают - просто пишет не удалось найти документ, как будто указана неверная ссылка.

Скорее всего - действительно - это произошло из-за перемещения xls-документа в другую папку - а относительные ссылки остались прежними.

Как поступить в таком случае? Пусть будут относительные ссылки - главное рабочие..

Благодарю Вас за отклик.
KOM-STAR вне форума Ответить с цитированием
Старый 05.04.2010, 13:43   #4
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Я бы на вашем месте реализовал гиперссылки при помощи формул типа этой:
Код:
  Ячейка: C2      Формула  (стиль A1):   =ГИПЕРССЫЛКА(A2&B2&".jpg";"посмотреть картинку")
                  Формула  (стиль R1C1): =ГИПЕРССЫЛКА(RC[-2]&RC[-1]&".jpg";"посмотреть картинку")
Вот пример: (всё работает и после сохранения файла, и после его перемещения, поскольку в данном варианте excel не проявляет инициативы по замене ссылок на относительные)




=============== добавлено позже ====================

У меня на сайте есть готовая программа для вставки изображений на лист Excel:
http://excelvba.ru/programmes/PastePictures


Цитата:
Надстройка позволяет искать в выбранной папке изображения, основываясь на содержимом ячеек таблицы Excel, и производить вставку найденных изображений в соседние ячейки (или в примечания к этим ячейкам).

Кроме того, надстройка умеет скачивать изображения по ссылкам, сохраняя загруженные изображения в заданной папке, и вставлять картинки в примечания к ячейкам.





Особенности надстройки вставки изображений:
  • загрузка изображений по ссылкам (обычная гиперссылка, просто текст ссылки - URL, формула =ГИПЕРССЫЛКА(), и т.п.)
  • поиск картинок в подпапках заданной папки (глубина поиска по подпапкам не ограничена)
  • установка выбранного пользователем размера для вставляемых изображений
  • отображение состояния поиска и вставки изображений (прогресс-бар)
  • вывод результатов обработки таблицы (сколько изображений вставлено, сколько не найдено)
  • добавление гиперссылок к вставляемым изображениям (по щелчку на картинке открывается исходный файл)
  • 2 режима поиска файлов - по точному совпадению имени файла, и по началу имени файла-изображения
  • 2 режима вставки картинок - подгонка размеров под ячейку, или соблюдение пропорций исходного изображения
  • вывод количества файлов в выбранной папке
  • возможность выбора столбца с названиями файлов, и указания номера столбца для вставляемых изображений
  • возможность вставки изображений в комментарии к ячейкам




Запуск вставки изображений выполняется из меню программы (на панели инструментов)

Надстройка вставки картинок в Excel теперь поддерживает обновления - поэтому отныне надстройка будет регулярно получать новые полезные функции.

Новый функционал будет добавляться в надстройку по мере поступления ваших пожеланий.

Последний раз редактировалось EducatedFool; 06.10.2012 в 14:59.
EducatedFool вне форума Ответить с цитированием
Старый 06.04.2010, 17:50   #5
KOM-STAR
 
Регистрация: 05.04.2010
Сообщений: 5
По умолчанию

Прошу прощения, но как применить указанный стиль ссылок к одному листу в документе?
KOM-STAR вне форума Ответить с цитированием
Старый 06.04.2010, 20:45   #6
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Я никаких стилей не применял...

просто ввел в первые 2 столбца текст, а в третий - формулу.
Excel сам распознал гиперссылку в первом столбце,
а в третий столбец оформился как гиперссылка, потому что там соответствующая формула.
EducatedFool вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
русские символы неправильно отображаются getUp Общие вопросы C/C++ 5 09.06.2014 11:03
как конвертнуть русские символы.(Visual Studio.Net) reyn90 Помощь студентам 0 05.01.2010 13:32
Я-чайник (в excel) - у меня есть к Вам просьба, если есть желание и время - помогите. rococococo Microsoft Office Excel 0 04.10.2009 12:16
Transparent color image если формат jpeg или jpg postal2 Компоненты Delphi 7 03.07.2009 12:14
Запретить ввод в Эдит русские символы. Ekzot1k Общие вопросы Delphi 1 14.06.2009 07:46