Цитата |
---|
ttt480 написал: Как открыть этот файл все равно, не взирая на длинный путь ? |
Лучше этого не допускать но все случается и путь вдруг становится длинным , это может при перемещении папок или файлов случится, или при переименовании их.
1. Есть ограничение файловой системы на длину полного пути в 260 символов.
2. Дополнительно к этому Excel добавляет ограничение длины при линковке в формулах, из этих 260 нужно вычесть спец символы , длину имени листа и адрес, короче останется еще меньше, но это не относится к открытию файла
Что делать, если файл есть, а его не открыть а надо?
Самый правильнй, это сокращать наименование папок на верхних уровнях, встречал как в папках названия типа . "Заседаник комиссии … от дата по поводу решения …. о ….. …." и внутрях файл "Решение …... " и ноль инфы. При чем именно папок и начинать надо с уровня высокого, иногда и до файла то не дойти не говоря уже о переименовать сам файл.
вариант 1 файлы лежат локально и хорошо структурированы и, как результат, путь длинный
1. иногда помогают имена в старом стиле 8.3 ( dir c ключом /x) покажет имена
2. можно на середину длинного пути с:\1\2\3\4\5\6\7\8\9\File.xls сделать "виртуальный диск" subst t: c:\1\2\3\4\5\6 и открыть файл T:\7\8\9\File.xls
после удаляем ненужное SUBST t: /D
вариант 2 файлы лежат на сети и хорошо структурированы и, как результат, путь длинный
1. иногда помогают имена в старом стиле 8.3 ( dir c ключом /x) покажет имена, но на хранилище должна быть включена поддержка имен 8.3. современные тенденции ведут к отключению этого по умолчанию
2. можно на середину длинного пути
2.1 обращение идет по сетевому имени \\server\share\1\2\3\4\5\6\7\8\9\File.xls . Делаем снова "виртуальный" диск мапируя net use t: \\server\share\1\2\3\4\5\6 открыть файл T:\7\8\9\File.xls
2.2 сетевой диск замапирован Z:\1\2\3\4\5\6\7\8\9\File.xls .Если админы не постарались и не закрыли видимость корня, то или в эксплорере или через командную строку net use узнаем путь \\server\share соотвтевенно, это означает что файлы лежат на \\server\share\1\2\3\4\5\6\7\8\9\File.xls . далее как пунктом выше
после удаляем ненужное net use t: /D
Ну и варианты связанные с переносом в другое место , где путь короче.
1. сработает перенос на несколько уровней папок выше , тем самым сократится путь, но это сработает только при переносе и в пределах одного диска. Ну и в случае с сетевыми дисками надо не забывать о наследовании прав доступа которые могут быть нарушены при переносе.
2. утилиты подобные ROBCOPY обходят ограничение системы и могут скопировать или перенести что угодно и куда угодно ( при этом с учетом прав доступа)
3. Как не парадоксально, но архиваторы тоже умеют работать с длиннющими путями и можно забэкапить часть ветки а потом раскрыть её уже в другом месте.