Слишком длинное имя файла или слишком длинный целевой путь — как исправить?
При копировании, создании, сохранении или перемещении файлов и папок в Windows 11 и Windows 10 на внутреннем HDD или SSD, при копировании данных на внешний диск или флешку, вы можете столкнуться с ошибками вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку», «Указано неправильное или слишком длинное имя файла» и другие, имеющие отношение к слишком длинным именам или путям к файлам и папкам.
В этой инструкции подробно о том, чем вызваны эти ошибки и как можно их исправить в Windows последних версий, а также дополнительная информация, которая может быть полезной, чтобы решить проблему.
- Слишком длинное имя файла или слишком длинный целевой путь
- Причины ошибки и способы её исправить
- Как включить поддержку длинных путей в Windows
- В редакторе реестра
- В редакторе локальной групповой политики
- Почему ошибка сохраняется при включенной поддержке длинных путей
Причины ошибки «Слишком длинное имя файла» и «Слишком длинный целевой путь» и способы её исправить
Несмотря на то, что файловой системой NTFS длина пути ограничена 32760 символов, в Windows существует ограничение на полный путь в 260 символов, включая путь к папке и имя файла с расширением. Ещё одно ограничение — 255 символов на имя файла или отдельной папки. Схожие ограничения есть для файловых систем FAT32 и ExFAT. Когда полный путь к файлу, с которым вы выполняете действия, превышает указанное число символов, вы можете получить сообщение об ошибках о слишком длинном целевом пути или слишком длинном имени файла.
Отсюда основные способы исправить ошибки, связанные с использованием слишком длинного пути:
- Использовать более короткие имена файлов и более простое и «компактное» дерево папок.
- Включить поддержку длинных путей — такая опция есть в Windows 10 и Windows 11, далее будет рассмотрен порядок действий. Однако, это решит не все проблемы, о чем мы также поговорим.
- Использовать файловые менеджеры, которые могут работать с длинными путями по умолчанию: Total Commander, Files (но для него потребуется включить и поддержку длинных путей в системе) или даже 7-Zip File Manager, который прекрасно с этим справляется.
Как включить поддержку длинных путей в Windows 10 и Windows 11
В зависимости от установленной редакции Windows, можно использовать один из следующих способов включения поддержки длинных путей.
В редакторе реестра
Если на вашем компьютере установлена Windows 11 или Windows 10 Домашняя, используйте редактор реестра для включения опции:
- Нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить» или нажмите клавиши Win+R на клавиатуре, введите regedit и нажмите Enter.
- В редакторе реестра перейдите к разделу
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFileSystem
- В правой панели редактора реестра дважды нажмите по параметру с именем LongPathsEnabled и присвойте значение 1 вместо 0 для этого параметра.
- Закройте редактор реестра, перезагрузите компьютер.
В редакторе локальной групповой политики
В Windows Pro и Enterprise можно использовать редактор локальной групповой политики:
- Нажмите клавиши Win+R на клавиатуре, введите gpedit.msc в диалоговом окне «Выполнить» и нажмите Enter.
- Перейдите к разделу Конфигурация компьютера — Административные шаблоны — Система — Файловая система.
- Дважды нажмите по параметру «Включить длинные пути Win32».
- Установите значение «Включено» для этого параметра, примените настройки.
- Закройте редактор локальной групповой политики и перезагрузите компьютер.
Готово, теперь поддержка длинных путей в Windows включена, однако это не означает, что ошибки, с ними связанные, исчезнут.
Почему ошибки длинных путей появляются, несмотря на включенную поддержку длинных путей
Даже если вы включите поддержку длинных путей к папкам и файлам в Windows 11/10, при действиях с такими файлами в проводнике и некоторых программах вы продолжите получать ошибки вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку» или «Указано неправильное или слишком длинное имя файла», также будут недоступны некоторые действия в папках, имеющих длинный путь.
Причина этого — поддержка длинных путей требуется не только на уровне системы, но и в самой программе, которая работает с этими путями, в качестве примера:
- Проводник не сможет полноценно работать с длинными путями даже при включенной поддержке.
- Файловый менеджер Files из магазина приложений будет исправно работать, если включить поддержку длинных путей, и будет сообщать об ошибках при отключенной поддержке.
- Total Commander или встроенный файловый менеджер 7-Zip работают с длинными путями независимо от того, включена ли их поддержка в Windows.
То же самое касается не только файловых менеджеров, но и прикладных программ: текстовых, графических и видео редакторов и другого ПО.
Надеюсь, инструкция прояснила причины ошибки и возможные способы решения проблемы. Если же вопросы остаются — жду их в комментариях.
- Remove From My Forums
-
Вопрос
-
Привет!
Есть такой путь http://10.х.х.х/TestFolder/LongNameFL/ в нем 2 папки: LongNameFL и ДЛФЛКАТАЛО. В этих каталогах лежит пару файлов (различающихся длиной имени), сделанные из этого — Long_FL_DC012345678901234567890123456789001234567890123456789012345678901234567890123456789012345678901234567890123456789012345678900123456789012345678901234567_8901234567890123456789012345678901234567.xlsx
длина имени файла 207 символов. Из английского каталога файл открывается нормально, из русского каталога имя файла нужно обрезать до 166 символов (в имени в этом месте стоит _). 2007 офис не имеет проблем с открытием этих фалов. Система Windows
7.Это баг, фича или ? И какое отношение имеет это к языку каталога?
Ответы
-
-
Предложено в качестве ответа
12 января 2011 г. 16:43
-
Помечено в качестве ответа
maxx-ode
12 января 2011 г. 17:43
-
Предложено в качестве ответа
-
Отношение это имеет в основном к кодовой таблице языка. Смысл в том, что у латиницы кодировка использует 7 бит, а у кириллицы — 8. Вот из-за этого и возникает различие. Судя по всему, у вас срабатывает ограничение на длину имени — к сожалению мне никогда
не приходилось создавать файлы с настолько огромными именами (это банально неудобно), но рискну предположить. что это все-таки фича.
Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется «как есть» без каких-либо гарантий
Посетите Блог Инженеров Доклады на Techdays:
http://www.techdays.ru/speaker/Vinokurov_YUrij.html-
Помечено в качестве ответа
Daniil KhabarovModerator
27 октября 2010 г. 6:45
-
Помечено в качестве ответа
Содержание
- Сообщение об ошибке при открытии или сохранении файла в Microsoft Excel: «Недопустимое имя файла» (эта ссылка может указывать на содержимое полностью или частично на английском языке)
- Сообщение об ошибке
- Причина
- Что попробовать предпринять
- Дополнительная информация
- Как открыть эксель с длинным именем
- Общие обсуждения
- Все ответы
- Имя файла или расширение слишком длинное? Вот исправление
- Что делать, если имя файла или расширение слишком длинное?
- 1. Измените имя каталога
- 2. Создайте сетевой диск
- 3. Используйте теракопию
- 4. Скопируйте или переместите эти файлы в другую папку.
- 5. Добавьте эти файлы в архив
- 6. Используйте командную строку
- 7. Используйте Total Commander
- 8. Используйте средство фиксации длинного пути
- 9. Используйте командную строку для переименования файлов или папок.
- 9.1. Показать скрытые файлы
- 9.2. Переименуйте файл
- 10. Загрузите файл в Dropbox и переименуйте его.
- 11. Внесите изменения в групповую политику
Сообщение об ошибке при открытии или сохранении файла в Microsoft Excel: «Недопустимое имя файла» (эта ссылка может указывать на содержимое полностью или частично на английском языке)
Сообщение об ошибке
При открытии или сохранении файла в Microsoft Excel может появиться одно из указанных ниже сообщений об ошибке. Сообщение об ошибке 1
Недопустимое имя файла.
Сообщение об ошибке 2
Не удалось получить доступ к файлу.
Сообщение об ошибке 3
Введенный путь » » слишком длинный. Введите более короткий путь.
Сообщение об ошибке 4
Не удалось найти . Проверьте правильность написания имени файла и убедитесь, что расположение файла указано правильно.
Сообщение об ошибке 5 В Microsoft Office Excel 2007 может появиться следующее сообщение об ошибке:
Не удалось найти » . «. Проверьте правильность написания имени файла и убедитесь, что расположение файла указано правильно. Если вы пытаетесь открыть файл из списка последних использованных файлов в меню файл, убедитесь, что он не был переименован, перемещен или удален.
Чтобы проверить сообщение об ошибке, полученное в Excel 2007, нажмите клавиши CTRL + SHIFT + I. В правом нижнем углу диалогового окна «сообщение об ошибке» отображается следующий номер:
Примечание. В Microsoft Office 2000 есть встроенные функциональные возможности, позволяющие получить дополнительные сведения об оповещениях и сообщениях об ошибках, связанных с трудностями.
Примечание. Если вы попали в эту статью нажатием кнопки » веб-информация » в сообщении об ошибке, вы уже включили настраиваемые оповещения.
Причина
Это сообщение об ошибке появляется при попытке сохранить или открыть файл, если путь к файлу (включая имя файла) превышает 218 символов. Это ограничение включает три символа, представляющих диск, символы в имени папки, символ обратной косой черты между папками и символы в имени файла. Это поведение основывается на ограничении 256 символов в Excel для создания ссылок на другой файл. Это ограничение в 218 символов для имени пути определяется следующими сведениями:
До 31 символа в имени листа.
Апострофы и квадратные скобки, используемые для обозначая имя книги.
Ссылка на ячейку.
Например, путь к файлу может resemple следующим образом: ‘c:excelpersonal. [my workbook.xls]up_to_31_char_sheetname’!$A$1 Примечание. Это происходит также в случае, если в пути есть квадратная скобка.
Что попробовать предпринять
Убедитесь, что путь к файлу имеет менее 219 символов. Это можно сделать одним из описанных ниже способов.
Переименуйте файл таким образом, чтобы он стал более коротким именем.
Переименуйте одну или несколько папок, содержащих файл, чтобы они были более короткими именами.
Переместите файл в папку с более коротким именем пути.
Дополнительная информация
Обратите внимание, что если ввести 255 символов в поле имя файла в диалоговом окне Сохранить как , а затем нажать кнопку ОК, появится следующее сообщение об ошибке:
Введенный путь » » слишком длинный. Введите более короткий путь.
Кроме того, если вы попытаетесь сохранить файл, а путь превышает 255 символов, появится следующее сообщение об ошибке:
Не удалось получить доступ к файлу. Попробуйте выполнить одно из следующих действий: Убедитесь, что указанная папка существует. -Убедитесь, что папка, содержащая этот файл, не доступна только для чтения. -Убедитесь, что имя файла не содержит ни одного из следующих символов: ? [ ] : | *. -Убедитесь, что имя файла или пути не содержит более 218 знаков.
Источник
Как открыть эксель с длинным именем
Общие обсуждения
Также при попытке открыть файл с длинным путем русскими буквами Excel 2013 выдает ошибку:
«Нам не удалось открыть этот файл. Переименуйте файл, дав ему короткое имя, или скопируйте его в другую папку с более коротким путем».
Если путь к файлу латиницей, то такой ошибки не возникает.
Также с помощью Excel 2010 эти файлы с длинным путем русскими буквами нормально открываются.
Т.е. я так понимаю, что русские буквы кодируются в закодированный URI, методом типа encodeURIComponent
и путь становится гораздо длинее.
Почему Excel 2010 открывает, а 2013 нет? Может есть где-то настройка?
Службу Document Id Service не хотелось бы использовать.
- Изменен тип Иван Проданов Microsoft contingent staff, Moderator 9 сентября 2013 г. 6:24
- Изменен тип Иван Проданов Microsoft contingent staff, Moderator 14 ноября 2013 г. 10:40
- Изменен тип Иван Проданов Microsoft contingent staff, Moderator 14 ноября 2013 г. 10:42
Все ответы
А по какой причине Вы не желаете использовать Document Id Service?
Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется «как есть» без каких-либо гарантий.
В вашей теме отсутствует активность в течение последних дней. При отсутствии каких-либо действий в течение 2 последующих дней, тема будет переведена в разряд обсуждений. Вы можете возобновить дискуссию, просто оставив сообщение в данной теме.
Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется «как есть» без каких-либо гарантий.
Document Id Service не решает данную проблему(
т.к. он в итоге редиректит на оригинальную длинную ссылку.
Столкнулся с такой же ситуацией. Обновил до sharepoint 2013.
— Excel 2013 открывал все документы в Sharepoint 2010.
— Excel 2010 открывает все документы в Sharepoint 2013 после обновления.
— Excel 2013 не открывает документы с длинными именами в Sharepoint 2013 после обновления
То что общая длина URL не должна превышать 255 символов — это понятно, но почему в случае с Excel 2010 это не мешает при открытии того же файла?
p.s. кстати URL имеет вид http://sharepoint/DocLib4/%D0%9F%D0%95%D0. xlsx от того при имени файлов в 40 символов в папке 2-го уровня уже практически не прочитать.
Кстати Word 2013 как и Excel 2010 не обращает внимание на длину URL больше 255 — все открывается.
Источник
Имя файла или расширение слишком длинное? Вот исправление
Системные ошибки могут возникнуть рано или поздно, и многие пользователи сообщали об ошибке ERROR_FILENAME_EXCED_RANGE. За этой ошибкой часто следует сообщение об ошибке Имя файла или расширение слишком длинное.
К счастью, это не самая сложная проблема, поэтому сегодня мы покажем вам, как избавиться от нее в Windows 10.
Что делать, если имя файла или расширение слишком длинное?
1. Измените имя каталога
Имя файла или расширение слишком длинное. Сообщение об ошибке обычно появляется при попытке доступа или изменения определенного файла. Обычно проблема не в файле. Это расположение файла.
Windows имеет определенное ограничение на длину пути к файлу; если путь к файлу слишком длинный, вы столкнетесь с этой ошибкой. Пользователи сообщили, что не могут перемещать или получать доступ к проблемным файлам из-за этой ошибки.
Вам нужно переименовать проблемный файл или изменить его путь, чтобы устранить проблему. В большинстве случаев вы не можете переименовать файл, но вы можете решить проблему, переименовав один из каталогов, содержащих этот файл.
Для этого переименуйте одну или несколько папок, ведущих к этому файлу, и проблема должна быть решена. Переименовав папки, вы уменьшите количество символов и снова сможете получить доступ к своим файлам.
2. Создайте сетевой диск
- Найдите папку, содержащую проблемный файл, и щелкните ее правой кнопкой мыши. Выберите «Поделиться с» > «Конкретные люди» в меню.
Выберите пользователя или группу, которым вы хотите поделиться своим файлом, и нажмите кнопку «Поделиться». Из соображений безопасности, вероятно, лучше выбрать свое имя пользователя.
Вы также можете временно решить эту проблему, создав сетевой диск. Прежде чем вы сможете использовать это решение, вам необходимо предоставить общий доступ к своей папке. Это относительно просто, и вы можете сделать это, следуя вышеизложенному.
После того, как папка станет общей, вам нужно создать сетевой диск. Это относительно просто, и вы можете сделать это, выполнив следующие действия:
- Откройте этот компьютер. Перейдите на вкладку «Компьютер» и выберите параметр «Подключить сетевой диск».
Выберите нужную букву диска и путь к папке. Обязательно снимите флажок «Переподключаться при входе в систему» и нажмите кнопку «Готово».
Это относительно простой обходной путь, но если вы не знакомы с сетевыми папками и общим доступом, у вас могут возникнуть проблемы с выполнением этого решения. После создания сетевого диска вы можете легко переместить проблемные файлы в другую папку, чтобы решить эту проблему.
3. Используйте теракопию
Если вы часто получаете сообщение об ошибке Имя файла или расширение слишком длинное, вы можете исправить это с помощью Teracopy. Если вы не можете удалить файлы, которые вызывают эту ошибку, обязательно попробуйте этот инструмент.
Просто скачайте Teracopy и перетащите туда проблемные файлы. Нажмите «Дополнительно» > «Удалить», чтобы удалить проблемные файлы с вашего ПК. Как видите, это довольно простое решение, если вам нужно удалить эти файлы, поэтому обязательно попробуйте его.
4. Скопируйте или переместите эти файлы в другую папку.
В большинстве случаев вы не сможете открывать файлы из-за этой ошибки, но можете их переместить. Просто найдите проблемные файлы и переместите их в другой каталог.
Вы можете создать новый каталог в корневой папке, например C: или D, и скопировать туда свои файлы. После этого вы сможете без проблем получить доступ к скопированным файлам.
5. Добавьте эти файлы в архив
Если вы получаете эту ошибку при попытке доступа к определенным файлам, вы можете исправить ее с помощью этого обходного пути. Вам нужно добавить проблемные файлы в архив, и вы сможете легко их переместить.
Кроме того, вы также можете извлечь файлы в другое место, чтобы получить к ним доступ. Имейте в виду, что архивирование может быть медленным процессом в зависимости от размера ваших файлов, поэтому архивирование всех файлов может занять некоторое время.
Вы можете архивировать файлы без сторонних инструментов; для этого вам нужно щелкнуть правой кнопкой мыши файл или папку, которую вы хотите заархивировать, и выбрать опцию «Добавить в архив».
Несколько пользователей также рекомендуют использовать инструмент 7-zip для решения этой проблемы. По их словам, вы можете использовать это приложение для создания zip-архива, но вы также можете использовать его для удаления проблемных файлов с вашего ПК.
6. Используйте командную строку
- Нажмите Windows клавишу, введите cmd и нажмите «Запуск от имени администратора» в разделе «Командная строка».
Если вы опытный пользователь, вы можете легко решить эту проблему с помощью командной строки. С помощью этого инструмента вы можете назначить путь к папке букве диска. Этот метод позволяет использовать только что созданную букву диска и получать доступ к проблемным файлам.
Имейте в виду, что это решение предназначено для опытных пользователей, поэтому, если вы не знакомы с командной строкой, вы не сможете правильно ее выполнить.
Также важно отметить, что мы не могли видеть новые диски на нашем ПК, но мы могли получить к ним доступ с помощью командной строки. Если вам нужно удалить только что созданный диск, вы можете ввести subst x: /d в командной строке.
7. Используйте Total Commander
Если вы не можете получить доступ к своим файлам из-за сообщения об ошибке Имя файла или расширение слишком длинное, вы можете попробовать использовать Total Commander. Это файловый менеджер с двумя панелями, и вы сможете легко получить доступ к этим файлам.
Total Commander является условно-бесплатным инструментом, но вы можете скачать его бесплатно и попробовать решить эту проблему с его помощью. Если вы не являетесь поклонником этого приложения, вы можете попробовать использовать любой другой файловый менеджер.
Несколько пользователей сообщили, что они удалили проблемные файлы с помощью GoodSync Explorer, поэтому вы также можете попробовать этот инструмент.
8. Используйте средство фиксации длинного пути
Несколько пользователей сообщили, что вы можете легко решить эту проблему с помощью Long Path Fixer. Это бесплатное приложение, которое позволит вам переименовывать, копировать или удалять проблемные файлы.
Кроме того, вы можете попробовать использовать такие инструменты, как Long Path Eraser Free или Ant Renamer. Все эти инструменты бесплатны, и вы можете использовать их для переименования проблемных файлов или папок и получения к ним доступа.
9. Используйте командную строку для переименования файлов или папок.
9.1. Показать скрытые файлы
- Откройте Проводник.
- Перейдите на вкладку «Вид» и установите флажок «Расширения имен файлов» и «Скрытые элементы». Тем самым вы обнаружите все скрытые файлы и расширения.
Прежде чем вы сможете переименовать свои файлы, вам нужно открыть скрытые файлы, папки и расширения. Вы можете сделать это с легкостью, выполнив шаги, описанные выше.
- Запустите командную строку от имени администратора.
- После запуска командной строки введите команду ниже и нажмите Enter : REN «C:Path_to_the_problematic_fileProblematicFile.txt»»File2.txt»
Не забудьте ввести правильный путь к проблемному файлу и расширение файла. В качестве примера мы использовали ProblematicFile.txt, поэтому замените его фактическим именем файла, вызвавшим эту ошибку.
Если у вас есть несколько файлов, к которым вы не можете получить доступ, попробуйте изменить имя папки. Для этого сделайте следующее:
- Откройте командную строку от имени администратора.
- Когда откроется командная строка, введите команду ниже и нажмите Enter : REN «C:Path_to_the_problematic_folder»»New Folder Name»
- Обязательно выберите папку с самым длинным именем и переименуйте ее, чтобы сделать ее короче.
- После переименования папки вы сможете без проблем получить доступ к проблемным файлам.
Имя файла или расширение слишком длинное. Сообщение об ошибке может помешать вам получить доступ к вашим файлам или папкам из-за их длинного пути, но вы можете обойти эту проблему, переименовав их.
Это немного продвинутое решение, поэтому оно может не подойти для обычных пользователей. Если вы не знакомы с командной строкой, может потребоваться несколько попыток, чтобы правильно переименовать файлы или папки.
Это простой обходной путь, и он идеально подходит, если вы не можете получить доступ к паре файлов меньшего размера. Вы также можете использовать это решение с файлами большего размера, но, поскольку оно требует загрузки файлов в Dropbox, лучше использовать его с файлами меньшего размера.
Найдите проблемный файл и загрузите его в Dropbox, чтобы решить проблему. После загрузки файла откройте хранилище Dropbox, переименуйте его и снова загрузите.
Если вы используете автоматическую синхронизацию для Dropbox, файл будет автоматически загружен на ваш компьютер, и вы сможете получить к нему доступ без каких-либо проблем.
11. Внесите изменения в групповую политику
- Нажмите Windows клавишу + R , введите gpedit.msc и нажмите кнопку ОК.
После запуска редактора групповой политики на левой панели перейдите в раздел «Политика локального компьютера» > «Конфигурация компьютера» > «Административные шаблоны» > «Система» > «Файловая система». Теперь найдите «Включить длинные пути NTFS» на правой панели и дважды щелкните его.
Выберите параметр «Включено» и нажмите «Применить» и «ОК», чтобы сохранить изменения.
По словам пользователей, в Windows 10 были внесены некоторые улучшения, связанные с ограничением количества символов в пути. В предыдущих версиях Windows длина пути для пользователей была ограничена 260 символами, но это ограничение может быть снято в Windows 10.
Если вы не можете получить доступ к редактору групповой политики в своей версии Windows, вы также можете снять это ограничение с помощью редактора реестра. Для этого выполните следующие действия:
- Нажмите Windows клавишу + R , введите regedit и нажмите OK.
Для этого щелкните правой кнопкой мыши пробел на правой панели и выберите «Создать» > «Значение DWORD (32-разрядное)». Введите LongPathsEnabled в качестве имени нового DWORD и дважды щелкните его, чтобы открыть его свойства.
Когда откроется окно «Свойства», установите для параметра «Значение» значение 1 и нажмите «ОК» , чтобы сохранить изменения.
Если вы не хотите редактировать свой реестр вручную, вы можете использовать этот zip-файл и файлы внутри, чтобы мгновенно применить изменения.
Просто запустите файл Remove 260 Character Path Limit.reg из архива, чтобы удалить ограничения пути к файлу. Вы также можете запустить другой файл из архива, чтобы снова включить ограничение.
Независимо от выбранного вами метода, включение этой опции позволит вам без проблем получить доступ к любому пути к файлу, поэтому попробуйте это решение.
Имя файла или расширение слишком длинное, и ошибка ERROR_FILENAME_EXCED_RANGE может появиться на любом ПК, но вы сможете легко исправить их, используя одно из решений из нашей статьи.
Не стесняйтесь сообщить нам о решении, которое помогло вам решить эту проблему, в комментариях ниже.
Источник
xuor007 0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
||||
1 |
||||
Excel 27.03.2021, 16:12. Показов 4821. Ответов 27 Метки нет (Все метки)
Доброго времени суток! Некоторое время назад столкнулся с проблемой, что в таблицах Excel невозможно редактировать файлы путь и имя которых превышает 255 символов.
привели к успеху. Прошу знающих форумчан помочь с этой проблемой. Попытка 1:
Попытка 2: Попытка 3: Идея: Если ни одним способом нет возможности получить информацию, мне требуемую, полагаю возможно написать программу-посредник и назначить на неё открытия файлов excel. Жду ответов и заранее благодарю за любую помощь
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
27.03.2021, 16:12 |
Ответы с готовыми решениями: Длинные имена файлов в Excel Длинные имена файлов Длинные имена файлов Длинные имена исходных файлов 27 |
Модератор 34707 / 19228 / 4039 Регистрация: 12.02.2012 Сообщений: 32,187 Записей в блоге: 13 |
|
28.03.2021, 07:45 |
2 |
Вопрос совершенно непонятен: строку длиной более 255 символов нельзя корректировать в ячейке? Можно. Размер строки (даже в старом офисе) может достигать тысяч символов… Приведите пример того, что не получается. И что такое ЛКМ?
0 |
0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
|
28.03.2021, 13:40 [ТС] |
3 |
Catstail, видимо Вы невнимательно прочитали тему и само сообщение. Проблема в том, что при попытки сохранить или отредактировать файл, путь и имя которого превышает 255 символов, программа Excel сообщает об ошибке(фото во вложении). Под аббревиатурой ЛКМ я подразумевал Личная Книга Макросов. P.s. Благодарю за исправление орфографической ошибки Миниатюры
0 |
811 / 465 / 181 Регистрация: 09.03.2009 Сообщений: 1,577 |
|
28.03.2021, 13:49 |
4 |
https://qastack.ru/superuser/1… can-handle говорит: «Классический» предел 260 символов: drive letter+ :+ 255 characters of filename+ (или для округления) + , null terminatorкак сказано в других ответах Однако реальный внутренний предел 32767 символов , которые могут быть достигнуты путем добавления , \?чтобы получить полный путь Windows API имеет много функций, которые также имеют версии Unicode, чтобы разрешить путь расширенной длины для максимальной общей длины пути 32 767 символов. Этот тип пути состоит из компонентов, разделенных обратной косой чертой, каждая из которых соответствует значению, возвращенному в lpMaximumComponentLengthпараметре GetVolumeInformationфункции (обычно это значение составляет 255 символов). Чтобы указать путь расширенной длины, используйте «\?»префикс. Например, «\?D:very long path». Если по каким-либо причинам полные пути не могут быть использованы, то к более глубоким каталогам можно обратиться, подключив их к букве диска с помощью subst/ diskpartили создав соединение / символическую ссылку для сокращения пути Начиная с Windows 10, MAX_PATHограничение также было удалено, хотя не по умолчанию Начиная с Windows 10, версия 1607, MAX_PATHограничения были удалены из общих функций файлов и каталогов Win32. Тем не менее, вы должны подписаться на новое поведение.
1 |
0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
|
28.03.2021, 14:42 [ТС] |
5 |
Zeag, благодарю за дополнение. Согласно комментариям к этой статье разные версии ОС Windows имеют разное ограничение MAX_PATH. Хотелось бы написать кроссплатформенную утилиту. Правильно ли я понял, что максимальный путь и имя файла в ОС Windows XP SP3 составляет 250 символов? Возможно Вы подскажите, как получить имя и путь открываемого файла, в программе Excel, до его загрузки и возникновения ошибки?
0 |
Zeag 811 / 465 / 181 Регистрация: 09.03.2009 Сообщений: 1,577 |
||||
28.03.2021, 14:54 |
6 |
|||
Кроссплатформенную вряд ли, на MacOS все будет иначе. )) Вероятно, вы имели в виду — под все версии Windows? Попробуйте указывать перед файлом «\?»префикс. Например, «\?D:very long path». У меня этот вариант (7/64, офис 2007) не прошел, но выкрутился так:
0 |
0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
|
28.03.2021, 15:00 [ТС] |
7 |
Zeag, Кроссплатформенную вряд ли, на MacOS все будет иначе. )) Да, прошу прощения, имел ввиду под действующие версии OC Windows) У меня этот вариант (7/64, офис 2007) не прошел, но выкрутился так Данный код будет работать, если Вы заранее знаете какой файл будете открывать.
0 |
811 / 465 / 181 Регистрация: 09.03.2009 Сообщений: 1,577 |
|
28.03.2021, 15:10 |
8 |
А имена вам кто дает? Dir, FSO? Можно анализировать путь и если он больше 250, то применять такую подстановку. Или они столь длинные пути не отдают? Код Содержимое папки C:testsdfksdjfkzxklksdjfkdgifueru8trveruhg7rtyg7rthgt7rhg7nsdjf38rewsmc3485438wokdow3853fiwj38375837gsre48t784iefjvci4eut834fcvm weit7348u3fidnjed8eryf459t8mi86439sd7435u7s34iu8we6rt43n43u3487r34765s834trh34uf8wr7f34r34u776776 28.03.2021 15:08 <DIR> . 28.03.2021 15:08 <DIR> .. 28.03.2021 15:08 <DIR> 34th8y743734hr743ytr74365634th345 0 файлов 0 байт Имя папки C:testsdfksdjfkzxklksdjfkdgifueru8trveruhg7rtyg7rthgt7rhg7nsdjf38rewsmc3485438wokdow3853fiwj38375837gsre48t784iefjvci4eut834fcvmweit7348 u3fidnjed8eryf459t8mi86439sd7435u7s34iu8we6rt43n43u3487r34765s834trh34uf8wr7f34r34u77677634th8y743734hr743ytr74365634th345 слишком длинно. Думаю (хотя надо проверить), что даже при переборе по Dir() можно выкрутиться: как длина общего пути (а это собирать через амперсенд) становится 250 или около того — сделать subst и продолжить. Если же берете из ячейки, то сразу видите, сколько длина, вычленяете наибольшую возможную часть и ей subst.
0 |
xuor007 0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
||||
28.03.2021, 15:21 [ТС] |
9 |
|||
Zeag, А имена вам кто дает? Dir, FSO? Не понял вопроса. Я пытаюсь открыть для редактирования файл Excel, путь которого, включая имя файла, превышает 260 символов и появляется сообщение об ошибке.
Но, к сожалению, из этой процедуры я так и не смог получить путь к файлу, который мне нужен. Мне известно, что возможно сократить путь к открываемому файлу созданием виртуального диска: Но для этих манипуляций необходимо сначала: У меня возникли сложности с первым пунктом(
0 |
Модератор 34707 / 19228 / 4039 Регистрация: 12.02.2012 Сообщений: 32,187 Записей в блоге: 13 |
|
28.03.2021, 15:24 |
10 |
что в таблицах Excel невозможно редактировать файлы путь и имя которых превышает 255 символов. — как это еще можно понять? «В таблицах»… Таблицы состоят из ячеек. Да, есть удобная штука, называется subst. Позволяет повесть директорию на свободную букву диска. Возникает вопрос: зачем нужны такие длинные имена?
0 |
xuor007 0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
||||
28.03.2021, 15:25 [ТС] |
11 |
|||
Catstail, — как это еще можно понять? «В таблицах»… Таблицы состоят из ячеек. Прошу прощения, видимо я не ясно выразился
Производственная необходимость
0 |
Модератор 34707 / 19228 / 4039 Регистрация: 12.02.2012 Сообщений: 32,187 Записей в блоге: 13 |
|
28.03.2021, 15:28 |
12 |
У меня возникли сложности с первым пунктом — и откуда вы хотите его получить? Имя файла первично. Если вы хотите открыть файл по имени, то имя нужно знать. Разве не так? Добавлено через 1 минуту
0 |
811 / 465 / 181 Регистрация: 09.03.2009 Сообщений: 1,577 |
|
28.03.2021, 15:28 |
13 |
xuor007, откуда и в какой момент возникает имя файла? Так понял, у вас есть какой-то макрос, который обрабатывает каталоги. Где он берет имена? Они в таблице на листе или получаются перебором какого-то каталога? Catstail, чую, дело касается обработки файлов на сетевом ресурсе.
1 |
0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
|
28.03.2021, 15:32 [ТС] |
14 |
Catstail, В данный момент пишу программу-посредник, которая будет запускаться при открытии файлов xls, но мне не нравится это решение
0 |
Catstail Модератор 34707 / 19228 / 4039 Регистрация: 12.02.2012 Сообщений: 32,187 Записей в блоге: 13 |
||||
28.03.2021, 15:36 |
15 |
|||
Открывая файл, возможно, делаются какие-то записи открываемого файла: ох… — ничего такого не делается. Я повторяю вопрос: откуда берется имя файла, который вы хотите открыть? Непонятно?
Добавлено через 59 секунд
в hnwd окна Excel; — это сильно!
0 |
0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
|
28.03.2021, 15:47 [ТС] |
16 |
Zeag, чую, дело касается обработки файлов на сетевом ресурсе файл находиться локально откуда и в какой момент возникает имя файла? Так понял, у вас есть какой-то макрос, который обрабатывает каталоги. Где он берет имена? Они в таблице на листе или получаются перебором какого-то каталога? Макроса, в данный момент, нет, хотелось бы его написать) Файл создается не с помощью Excel, он создается средствами ОС Windows 10 путем копирования из другого каталога. Сама OC Windows 10 не выдает ошибку при копировании и создании этих файлов. Ошибка возникает, только при их открытии Добавлено через 2 минуты насколько я понимаю, при открытии программы Excel назначается хэндл окна и, возможно, есть способ получить название и путь файла, средствами WMI Добавлено через 7 минут ох… — ничего такого не делается. Я повторяю вопрос: откуда берется имя файла, который вы хотите открыть? Непонятно? Постараюсь описать процесс создания файла максимально доступно: Повторюсь, мне крайне важно сохранить структуру папок, поэтому их имена, как и имена файлов, я не могу сократить
0 |
малоболт 1143 / 442 / 193 Регистрация: 30.01.2020 Сообщений: 1,095 |
|
28.03.2021, 16:03 |
17 |
Ошибка возникает, только при их открытии Ошибка не связана с Excel. Сделайте .txt файлы такого же длинного наименования и попытайтесь открыть. Так что задача не пытаться что-то изобразить на VBA, а сделать так, чтобы при открытии файлов, до того, как по расширению будет распознано, что его надо открывать Excel’ем, или чем-то другим — перед именем подставлялся префикс
\?
0 |
0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
|
28.03.2021, 16:08 [ТС] |
18 |
Punkt5, Ошибка не связана с Excel. Сделайте .txt файлы такого же длинного наименования и попытайтесь открыть Вы не правы. Переименовал расширение файла на .txt, блокнот открыл без проблем
0 |
Punkt5 малоболт 1143 / 442 / 193 Регистрация: 30.01.2020 Сообщений: 1,095 |
||||
28.03.2021, 16:12 |
19 |
|||
Если у вас такая фигня только с файлами Excel, можно попробовать сделать bat-файл типа:
где вместо C:Program FilesMicrosoft OfficeOFFICE11excel.exe укажите полный путь к вашему excel.exe.
0 |
0 / 0 / 0 Регистрация: 21.03.2017 Сообщений: 35 |
|
28.03.2021, 16:14 [ТС] |
20 |
Punkt5, Если у вас такая фигня только с файлами Excel, можно попробовать сделать bat-файл типа В данный момент пишу программу-посредник, которая будет запускаться при открытии файлов xls, но мне не нравится это решение
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
28.03.2021, 16:14 |
Помогаю со студенческими работами здесь Длинные имена файлов в глубине папок Скрипт html в pdf не принимает длинные имена файлов import pdfkit Укоротить длинные имена до размера K символов, а те имена, которые короче K символов дополнить восклицательными знаками Длинные имена Длинные имена таблиц в SQL запросах Создать файл, содержащий имена всех файлов системы, созданных в текущем месяце, имена пользователей, их создавших Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 20 |
БМВ
Модератор
Сообщений: 21380
Регистрация: 28.12.2016
Excel 2013, 2016
Цитата |
---|
ttt480 написал: Как открыть этот файл все равно, не взирая на длинный путь ? |
Лучше этого не допускать но все случается и путь вдруг становится длинным , это может при перемещении папок или файлов случится, или при переименовании их.
1. Есть ограничение файловой системы на длину полного пути в 260 символов.
2. Дополнительно к этому Excel добавляет ограничение длины при линковке в формулах, из этих 260 нужно вычесть спец символы , длину имени листа и адрес, короче останется еще меньше, но это не относится к открытию файла
Что делать, если файл есть, а его не открыть а надо?
Самый правильнй, это сокращать наименование папок на верхних уровнях, встречал как в папках названия типа . «Заседаник комиссии … от дата по поводу решения …. о ….. ….» и внутрях файл «Решение …… » и ноль инфы. При чем именно папок и начинать надо с уровня высокого, иногда и до файла то не дойти не говоря уже о переименовать сам файл.
вариант 1 файлы лежат локально и хорошо структурированы и, как результат, путь длинный
1. иногда помогают имена в старом стиле 8.3 ( dir c ключом /x) покажет имена
2. можно на середину длинного пути с:123456789File.xls сделать «виртуальный диск» subst t: c:123456 и открыть файл T:789File.xls
после удаляем ненужное SUBST t: /D
вариант 2 файлы лежат на сети и хорошо структурированы и, как результат, путь длинный
1. иногда помогают имена в старом стиле 8.3 ( dir c ключом /x) покажет имена, но на хранилище должна быть включена поддержка имен 8.3. современные тенденции ведут к отключению этого по умолчанию
2. можно на середину длинного пути
2.1 обращение идет по сетевому имени \servershare123456789File.xls . Делаем снова «виртуальный» диск мапируя net use t: \servershare123456 открыть файл T:789File.xls
2.2 сетевой диск замапирован Z:123456789File.xls .Если админы не постарались и не закрыли видимость корня, то или в эксплорере или через командную строку net use узнаем путь \servershare соотвтевенно, это означает что файлы лежат на \servershare123456789File.xls . далее как пунктом выше
после удаляем ненужное net use t: /D
Ну и варианты связанные с переносом в другое место , где путь короче.
1. сработает перенос на несколько уровней папок выше , тем самым сократится путь, но это сработает только при переносе и в пределах одного диска. Ну и в случае с сетевыми дисками надо не забывать о наследовании прав доступа которые могут быть нарушены при переносе.
2. утилиты подобные ROBCOPY обходят ограничение системы и могут скопировать или перенести что угодно и куда угодно ( при этом с учетом прав доступа)
3. Как не парадоксально, но архиваторы тоже умеют работать с длиннющими путями и можно забэкапить часть ветки а потом раскрыть её уже в другом месте.
По вопросам из тем форума, личку не читаю.