Длинное имя файла excel

Слишком длинное имя файла или слишком длинный целевой путь — как исправить?

Как исправить ошибки слишком длинное имя файла или слишком длинный целевой путьПри копировании, создании, сохранении или перемещении файлов и папок в Windows 11 и Windows 10 на внутреннем HDD или SSD, при копировании данных на внешний диск или флешку, вы можете столкнуться с ошибками вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку», «Указано неправильное или слишком длинное имя файла» и другие, имеющие отношение к слишком длинным именам или путям к файлам и папкам.

В этой инструкции подробно о том, чем вызваны эти ошибки и как можно их исправить в Windows последних версий, а также дополнительная информация, которая может быть полезной, чтобы решить проблему.

  • Слишком длинное имя файла или слишком длинный целевой путь
    • Причины ошибки и способы её исправить
    • Как включить поддержку длинных путей в Windows
      • В редакторе реестра
      • В редакторе локальной групповой политики
    • Почему ошибка сохраняется при включенной поддержке длинных путей

Причины ошибки «Слишком длинное имя файла» и «Слишком длинный целевой путь» и способы её исправить

Слишком длинный целевой путь при копировании

Несмотря на то, что файловой системой NTFS длина пути ограничена 32760 символов, в Windows существует ограничение на полный путь в 260 символов, включая путь к папке и имя файла с расширением. Ещё одно ограничение — 255 символов на имя файла или отдельной папки. Схожие ограничения есть для файловых систем FAT32 и ExFAT. Когда полный путь к файлу, с которым вы выполняете действия, превышает указанное число символов, вы можете получить сообщение об ошибках о слишком длинном целевом пути или слишком длинном имени файла.

Ошибка Слишком длинное имя файла в Windows

Отсюда основные способы исправить ошибки, связанные с использованием слишком длинного пути:

  1. Использовать более короткие имена файлов и более простое и «компактное» дерево папок.
  2. Включить поддержку длинных путей — такая опция есть в Windows 10 и Windows 11, далее будет рассмотрен порядок действий. Однако, это решит не все проблемы, о чем мы также поговорим.
  3. Использовать файловые менеджеры, которые могут работать с длинными путями по умолчанию: Total Commander, Files (но для него потребуется включить и поддержку длинных путей в системе) или даже 7-Zip File Manager, который прекрасно с этим справляется.

Как включить поддержку длинных путей в Windows 10 и Windows 11

В зависимости от установленной редакции Windows, можно использовать один из следующих способов включения поддержки длинных путей.

В редакторе реестра

Если на вашем компьютере установлена Windows 11 или Windows 10 Домашняя, используйте редактор реестра для включения опции:

  1. Нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить» или нажмите клавиши Win+R на клавиатуре, введите regedit и нажмите Enter.
  2. В редакторе реестра перейдите к разделу
    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFileSystem
  3. В правой панели редактора реестра дважды нажмите по параметру с именем LongPathsEnabled и присвойте значение 1 вместо 0 для этого параметра. Включить поддержку длинных путей в редакторе реестра Windows
  4. Закройте редактор реестра, перезагрузите компьютер.

В редакторе локальной групповой политики

В Windows Pro и Enterprise можно использовать редактор локальной групповой политики:

  1. Нажмите клавиши Win+R на клавиатуре, введите gpedit.msc в диалоговом окне «Выполнить» и нажмите Enter.
  2. Перейдите к разделу Конфигурация компьютера — Административные шаблоны — Система — Файловая система.
  3. Дважды нажмите по параметру «Включить длинные пути Win32». Политики файловой системы в gpedit
  4. Установите значение «Включено» для этого параметра, примените настройки. Включить поддержку длинных путей в редакторе локальной групповой политики
  5. Закройте редактор локальной групповой политики и перезагрузите компьютер.

Готово, теперь поддержка длинных путей в Windows включена, однако это не означает, что ошибки, с ними связанные, исчезнут.

Почему ошибки длинных путей появляются, несмотря на включенную поддержку длинных путей

Имена файлов слишком длинны для помещения в эту папку

Даже если вы включите поддержку длинных путей к папкам и файлам в Windows 11/10, при действиях с такими файлами в проводнике и некоторых программах вы продолжите получать ошибки вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку» или «Указано неправильное или слишком длинное имя файла», также будут недоступны некоторые действия в папках, имеющих длинный путь.

Причина этого — поддержка длинных путей требуется не только на уровне системы, но и в самой программе, которая работает с этими путями, в качестве примера:

  • Проводник не сможет полноценно работать с длинными путями даже при включенной поддержке.
  • Файловый менеджер Files из магазина приложений будет исправно работать, если включить поддержку длинных путей, и будет сообщать об ошибках при отключенной поддержке. Работа с длинными путями в файловом менеджере 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. Вся информация предоставляется «как есть» без каких-либо гарантий
    Follow MSTechnetForum on Twitter

    Посетите Блог Инженеров Доклады на Techdays:
    http://www.techdays.ru/speaker/Vinokurov_YUrij.html

    • Помечено в качестве ответа
      Daniil KhabarovModerator
      27 октября 2010 г. 6:45

Содержание

  1. Сообщение об ошибке при открытии или сохранении файла в Microsoft Excel: «Недопустимое имя файла» (эта ссылка может указывать на содержимое полностью или частично на английском языке)
  2. Сообщение об ошибке
  3. Причина
  4. Что попробовать предпринять
  5. Дополнительная информация
  6. Как открыть эксель с длинным именем
  7. Общие обсуждения
  8. Все ответы
  9. Имя файла или расширение слишком длинное? Вот исправление
  10. Что делать, если имя файла или расширение слишком длинное?
  11. 1. Измените имя каталога
  12. 2. Создайте сетевой диск
  13. 3. Используйте теракопию
  14. 4. Скопируйте или переместите эти файлы в другую папку.
  15. 5. Добавьте эти файлы в архив
  16. 6. Используйте командную строку
  17. 7. Используйте Total Commander
  18. 8. Используйте средство фиксации длинного пути
  19. 9. Используйте командную строку для переименования файлов или папок.
  20. 9.1. Показать скрытые файлы
  21. 9.2. Переименуйте файл
  22. 10. Загрузите файл в Dropbox и переименуйте его.
  23. 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. Создайте сетевой диск

  1. Найдите папку, содержащую проблемный файл, и щелкните ее правой кнопкой мыши. Выберите «Поделиться с» > «Конкретные люди» в меню.

Выберите пользователя или группу, которым вы хотите поделиться своим файлом, и нажмите кнопку «Поделиться». Из соображений безопасности, вероятно, лучше выбрать свое имя пользователя.

Вы также можете временно решить эту проблему, создав сетевой диск. Прежде чем вы сможете использовать это решение, вам необходимо предоставить общий доступ к своей папке. Это относительно просто, и вы можете сделать это, следуя вышеизложенному.

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

    Откройте этот компьютер. Перейдите на вкладку «Компьютер» и выберите параметр «Подключить сетевой диск».

Выберите нужную букву диска и путь к папке. Обязательно снимите флажок «Переподключаться при входе в систему» ​​и нажмите кнопку «Готово».

  • Когда вы закончите, вы увидите новый доступный диск и сможете использовать его для доступа к проблемным файлам.
  • Это относительно простой обходной путь, но если вы не знакомы с сетевыми папками и общим доступом, у вас могут возникнуть проблемы с выполнением этого решения. После создания сетевого диска вы можете легко переместить проблемные файлы в другую папку, чтобы решить эту проблему.

    3. Используйте теракопию

    Если вы часто получаете сообщение об ошибке Имя файла или расширение слишком длинное, вы можете исправить это с помощью Teracopy. Если вы не можете удалить файлы, которые вызывают эту ошибку, обязательно попробуйте этот инструмент.

    Просто скачайте Teracopy и перетащите туда проблемные файлы. Нажмите «Дополнительно» > «Удалить», чтобы удалить проблемные файлы с вашего ПК. Как видите, это довольно простое решение, если вам нужно удалить эти файлы, поэтому обязательно попробуйте его.

    4. Скопируйте или переместите эти файлы в другую папку.

    В большинстве случаев вы не сможете открывать файлы из-за этой ошибки, но можете их переместить. Просто найдите проблемные файлы и переместите их в другой каталог.

    Вы можете создать новый каталог в корневой папке, например C: или D, и скопировать туда свои файлы. После этого вы сможете без проблем получить доступ к скопированным файлам.

    5. Добавьте эти файлы в архив

    Если вы получаете эту ошибку при попытке доступа к определенным файлам, вы можете исправить ее с помощью этого обходного пути. Вам нужно добавить проблемные файлы в архив, и вы сможете легко их переместить.

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

    Вы можете архивировать файлы без сторонних инструментов; для этого вам нужно щелкнуть правой кнопкой мыши файл или папку, которую вы хотите заархивировать, и выбрать опцию «Добавить в архив».

    Несколько пользователей также рекомендуют использовать инструмент 7-zip для решения этой проблемы. По их словам, вы можете использовать это приложение для создания zip-архива, но вы также можете использовать его для удаления проблемных файлов с вашего ПК.

    6. Используйте командную строку

    1. Нажмите Windows клавишу, введите cmd и нажмите «Запуск от имени администратора» в разделе «Командная строка».
  • Когда откроется командная строка, введите команду ниже и нажмите Enter : subst X: «C:Path_to_the_problematic_file»
  • После выполнения команды вы сможете получить доступ к диску X: и всем проблемным файлам.
  • Если вы опытный пользователь, вы можете легко решить эту проблему с помощью командной строки. С помощью этого инструмента вы можете назначить путь к папке букве диска. Этот метод позволяет использовать только что созданную букву диска и получать доступ к проблемным файлам.

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

    Также важно отметить, что мы не могли видеть новые диски на нашем ПК, но мы могли получить к ним доступ с помощью командной строки. Если вам нужно удалить только что созданный диск, вы можете ввести 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. Показать скрытые файлы

    1. Откройте Проводник.
    2. Перейдите на вкладку «Вид» и установите флажок «Расширения имен файлов» и «Скрытые элементы». Тем самым вы обнаружите все скрытые файлы и расширения.

    Прежде чем вы сможете переименовать свои файлы, вам нужно открыть скрытые файлы, папки и расширения. Вы можете сделать это с легкостью, выполнив шаги, описанные выше.

    1. Запустите командную строку от имени администратора.
    2. После запуска командной строки введите команду ниже и нажмите Enter : REN «C:Path_to_the_problematic_fileProblematicFile.txt»»File2.txt»

    Не забудьте ввести правильный путь к проблемному файлу и расширение файла. В качестве примера мы использовали ProblematicFile.txt, поэтому замените его фактическим именем файла, вызвавшим эту ошибку.

    Если у вас есть несколько файлов, к которым вы не можете получить доступ, попробуйте изменить имя папки. Для этого сделайте следующее:

    1. Откройте командную строку от имени администратора.
    2. Когда откроется командная строка, введите команду ниже и нажмите Enter : REN «C:Path_to_the_problematic_folder»»New Folder Name»
    3. Обязательно выберите папку с самым длинным именем и переименуйте ее, чтобы сделать ее короче.
    4. После переименования папки вы сможете без проблем получить доступ к проблемным файлам.

    Имя файла или расширение слишком длинное. Сообщение об ошибке может помешать вам получить доступ к вашим файлам или папкам из-за их длинного пути, но вы можете обойти эту проблему, переименовав их.

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

    Это простой обходной путь, и он идеально подходит, если вы не можете получить доступ к паре файлов меньшего размера. Вы также можете использовать это решение с файлами большего размера, но, поскольку оно требует загрузки файлов в Dropbox, лучше использовать его с файлами меньшего размера.

    Найдите проблемный файл и загрузите его в Dropbox, чтобы решить проблему. После загрузки файла откройте хранилище Dropbox, переименуйте его и снова загрузите.

    Если вы используете автоматическую синхронизацию для Dropbox, файл будет автоматически загружен на ваш компьютер, и вы сможете получить к нему доступ без каких-либо проблем.

    11. Внесите изменения в групповую политику

    1. Нажмите Windows клавишу + R , введите gpedit.msc и нажмите кнопку ОК.

    После запуска редактора групповой политики на левой панели перейдите в раздел «Политика локального компьютера» > «Конфигурация компьютера» > «Административные шаблоны» > «Система» > «Файловая система». Теперь найдите «Включить длинные пути NTFS» на правой панели и дважды щелкните его.

    Выберите параметр «Включено» и нажмите «Применить» и «ОК», чтобы сохранить изменения.

  • Закройте редактор групповой политики, перезагрузите компьютер и проверьте, решена ли проблема.
  • По словам пользователей, в Windows 10 были внесены некоторые улучшения, связанные с ограничением количества символов в пути. В предыдущих версиях Windows длина пути для пользователей была ограничена 260 символами, но это ограничение может быть снято в Windows 10.

    Если вы не можете получить доступ к редактору групповой политики в своей версии Windows, вы также можете снять это ограничение с помощью редактора реестра. Для этого выполните следующие действия:

      Нажмите Windows клавишу + R , введите regedit и нажмите OK.
  • Когда откроется редактор реестра, перейдите по пути ниже на левой панели: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFileSystem
  • На правой панели найдите и дважды щелкните LongPathsEnabled DWORD. Если этот ключ недоступен, вам потребуется создать его вручную.

    Для этого щелкните правой кнопкой мыши пробел на правой панели и выберите «Создать» > «Значение 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 символов.
    Прочитал на сторонних формах о «костыле» — создании виртуального диска, для сокращения пути к файлу.
    Хочу это автоматизировать.
    К сожалению, мои изыскания не

    привили

    привели к успеху. Прошу знающих форумчан помочь с этой проблемой.
    Проблема, в данный момент, в том, чтобы получить путь и имя файла, которое открывает Excel, до его загрузки.

    Попытка 1:
    ЛКМ загружается до открытия нужного файла, но к сожалению в коллекции Workbook только файл «PERSONAL.XLSB».
    Файла, который должен открыться после загрузки ЛКМ в этой коллекции нет.

    Visual Basic
    1
    2
    3
    4
    5
    6
    7
    
    Private Sub App_WorkbookOpen(ByVal Wb As Workbook)
     
       For Each w In Application.Workbooks
           MsgBox (w.FullName)
       Next w
     
    End Sub

    Попытка 2:
    Получив hwnd окна по WMI добраться до названия файла. К сожалению, также не нашёл

    Попытка 3:
    Возможно где-то в переменной среде Excel есть эта информация. Но функция Environ() такой информации не дала.

    Идея: Если ни одним способом нет возможности получить информацию, мне требуемую, полагаю возможно написать программу-посредник и назначить на неё открытия файлов excel.

    Жду ответов и заранее благодарю за любую помощь



    0



    Programming

    Эксперт

    94731 / 64177 / 26122

    Регистрация: 12.04.2006

    Сообщений: 116,782

    27.03.2021, 16:12

    Ответы с готовыми решениями:

    Длинные имена файлов в Excel
    Доброго времени суток! Некоторое время назад столкнулся с проблемой, что в таблицах Excel…

    Длинные имена файлов
    вот например есть файл с длинным именем ~150 знаков если попробовать скопировать его в другую папку…

    Длинные имена файлов
    Здравствуйте. Подскажите, можно ли решить проблему. Решил систематизировать все файлы на рабочем…

    Длинные имена исходных файлов
    Доброго времени суток.
    Опишу суть проблемы: поймал в систему какую-то гадость. Перед тем, как…

    27

    Модератор

    Эксперт функциональных языков программированияЭксперт Python

    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. Благодарю за исправление орфографической ошибки

    Миниатюры

    Длинные имена файлов в Excel
     



    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) не прошел, но выкрутился так:

    Visual Basic
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    Sub xtest()
       Dim sFN As String, FP As Workbook
       sFN = "C:testsdfksdjfkzxklksdjfkdgifueru8trveruhg7rtyg7rthgt7rhg7nsdjf38rewsmc3485438wokdow3853fiwj38375837gsre48t784iefjvci4eut834fcvmweit7348u3fidnjed8eryf459t8mi86439sd7435u7s34iu8we6rt43n43u3487r34765s834trh34uf8wr7f34r34u77677634th8y743734hr743ytr74365634th345Стрекоза_7_862_от_31_12_2020_Март_2021.xlsx"
    ' когда задал так, не прошло ни напрямую, ни с \?
     
    ' тогда сделал (здесь вручную, но можно автоматизировать): разбил путь на часть, не превышающую 256 знаков,
    ' и ее посадил на subst (разумеется, нужно найти свободную букву, можно через FSO или еще как), а хвост оставил в имени файла
       Shell "subst Q: C:testsdfksdjfkzxklksdjfkdgifueru8trveruhg7rtyg7rthgt7rhg7nsdjf38rewsmc3485438wokdow3853fiwj38375837gsre48t784iefjvci4eut834fcvmweit7348u3fidnjed8eryf459t8mi86439sd7435u7s34iu8we6rt43n43u3487r34765s834trh34uf8wr7f34r34u776776"
       Set FP = Application.Workbooks.Open(Filename:="Q:34th8y743734hr743ytr74365634th345Стрекоза_7_862_от_31_12_2020_Март_2021.xlsx", Local:=True)
       MsgBox Cells(7, 1)  ' работает!
       Shell "subst Q: /D"
       FP.Close False
       Set FP = Nothing
    End Sub



    0



    0 / 0 / 0

    Регистрация: 21.03.2017

    Сообщений: 35

    28.03.2021, 15:00

     [ТС]

    7

    Zeag,

    Кроссплатформенную вряд ли, на MacOS все будет иначе. ))

    Да, прошу прощения, имел ввиду под действующие версии OC Windows)

    У меня этот вариант (7/64, офис 2007) не прошел, но выкрутился так

    Данный код будет работать, если Вы заранее знаете какой файл будете открывать.
    Но как заранее перехватить название открываемого файла, программой Excel, до появления ошибки и выполнить свой код, мне, к сожалению, не известно(



    0



    811 / 465 / 181

    Регистрация: 09.03.2009

    Сообщений: 1,577

    28.03.2021, 15:10

    8

    А имена вам кто дает? Dir, FSO? Можно анализировать путь и если он больше 250, то применять такую подстановку. Или они столь длинные пути не отдают?
    Вот я сделал dir /s из ком.строки:

    Код

     Содержимое папки 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 символов и появляется сообщение об ошибке.
    Единственный способ, который у меня сработал, это прописать код в процедуру ЛКМ:

    Visual Basic
    1
    2
    3
    4
    5
    6
    7
    
    Private Sub App_WorkbookOpen(ByVal Wb As Workbook)
     
       For Each w In Application.Workbooks
           MsgBox (w.FullName)
       Next w
     
    End Sub

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

    Мне известно, что возможно сократить путь к открываемому файлу созданием виртуального диска:
    — утилитой subst, для локальных файлов
    — утилитой net use, для файлов, которые нужно использовать по сети

    Но для этих манипуляций необходимо сначала:
    1. Получить имя пути и файла, до его загрузки
    2. Проверить длину полного пути(если путь короче 260 символов, то открыть файл; если путь длинее приступить к сокращению)
    3. Если путь длинее, закрыть файл; Подключить виртуальный диск; Открыть файл по новому пути
    4. После закрытия файла отключить виртуальный диск.

    У меня возникли сложности с первым пунктом(



    0



    Модератор

    Эксперт функциональных языков программированияЭксперт Python

    34707 / 19228 / 4039

    Регистрация: 12.02.2012

    Сообщений: 32,187

    Записей в блоге: 13

    28.03.2021, 15:24

    10

    Цитата
    Сообщение от xuor007
    Посмотреть сообщение

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

    — как это еще можно понять? «В таблицах»… Таблицы состоят из ячеек.

    Да, есть удобная штука, называется subst. Позволяет повесть директорию на свободную букву диска.

    Возникает вопрос: зачем нужны такие длинные имена?



    0



    xuor007

    0 / 0 / 0

    Регистрация: 21.03.2017

    Сообщений: 35

    28.03.2021, 15:25

     [ТС]

    11

    Catstail,

    — как это еще можно понять? «В таблицах»… Таблицы состоят из ячеек.

    Прошу прощения, видимо я не ясно выразился

    Visual Basic
    1
    
    Возникает вопрос: зачем нужны такие длинные имена?

    Производственная необходимость



    0



    Модератор

    Эксперт функциональных языков программированияЭксперт Python

    34707 / 19228 / 4039

    Регистрация: 12.02.2012

    Сообщений: 32,187

    Записей в блоге: 13

    28.03.2021, 15:28

    12

    Цитата
    Сообщение от xuor007
    Посмотреть сообщение

    У меня возникли сложности с первым пунктом

    — и откуда вы хотите его получить? Имя файла первично. Если вы хотите открыть файл по имени, то имя нужно знать. Разве не так?

    Добавлено через 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,
    Открывая файл, возможно, делаются какие-то записи открываемого файла:
    1. в переменную среду Excel;
    2. в реестр;
    3. в hnwd окна Excel;
    4. возможно куда-то ещё.
    Мне это не известно, затем и обратился к помощи форумчан.

    В данный момент пишу программу-посредник, которая будет запускаться при открытии файлов xls, но мне не нравится это решение



    0



    Catstail

    Модератор

    Эксперт функциональных языков программированияЭксперт Python

    34707 / 19228 / 4039

    Регистрация: 12.02.2012

    Сообщений: 32,187

    Записей в блоге: 13

    28.03.2021, 15:36

    15

    Цитата
    Сообщение от xuor007
    Посмотреть сообщение

    Открывая файл, возможно, делаются какие-то записи открываемого файла:

    ох… — ничего такого не делается. Я повторяю вопрос: откуда берется имя файла, который вы хотите открыть? Непонятно?

    Visual Basic
    1
    
            Set wb = Workbooks.Open(Имя_файла) ' откуда у вас берется это имя?

    Добавлено через 59 секунд

    Цитата
    Сообщение от xuor007
    Посмотреть сообщение

    в hnwd окна Excel;

    — это сильно!



    0



    0 / 0 / 0

    Регистрация: 21.03.2017

    Сообщений: 35

    28.03.2021, 15:47

     [ТС]

    16

    Zeag,

    чую, дело касается обработки файлов на сетевом ресурсе

    файл находиться локально

    откуда и в какой момент возникает имя файла? Так понял, у вас есть какой-то макрос, который обрабатывает каталоги. Где он берет имена? Они в таблице на листе или получаются перебором какого-то каталога?

    Макроса, в данный момент, нет, хотелось бы его написать) Файл создается не с помощью Excel, он создается средствами ОС Windows 10 путем копирования из другого каталога. Сама OC Windows 10 не выдает ошибку при копировании и создании этих файлов. Ошибка возникает, только при их открытии

    Добавлено через 2 минуты
    Catstail,

    насколько я понимаю, при открытии программы Excel назначается хэндл окна и, возможно, есть способ получить название и путь файла, средствами WMI

    Добавлено через 7 минут
    Catstail,

    ох… — ничего такого не делается. Я повторяю вопрос: откуда берется имя файла, который вы хотите открыть? Непонятно?

    Постараюсь описать процесс создания файла максимально доступно:
    1. В проводнике я открываю директорию C:testsdfksdjfkzxklksdjfkdgifueru8trveruhg7rtyg7 rthgt7rhg7nsdjf38rewsmc3485438wokdow3853fiwj38375 837gsre48t784iefjvci4eut834fcvm
    weit7348u3fidnjed8eryf459t8mi86439sd7435u7s34iu8 we6rt43n43u3487r34765
    2. Копирую файл, находящийся там(s834trh34uf8wr7f34r34u776776.xlsx), в буфер обмена
    3. Создаю директорию C:testsdfksdjfkzxklksdjfkdgifueru8trveruhg7rtyg7 rthgt7rhg7nsdjf38rewsmc3485438wokdow3853fiwj38375 837gsre48t784iefjvci4eut834fcvm
    weit7348u3fidnjed8eryf459t8mi86439sd7435u7s34iu8 we6rt43n43u3487r347652
    4. Вставляю файл в созданную мною директорию.

    Повторюсь, мне крайне важно сохранить структуру папок, поэтому их имена, как и имена файлов, я не могу сократить



    0



    малоболт

    1143 / 442 / 193

    Регистрация: 30.01.2020

    Сообщений: 1,095

    28.03.2021, 16:03

    17

    Цитата
    Сообщение от xuor007
    Посмотреть сообщение

    Ошибка возникает, только при их открытии

    Ошибка не связана с Excel. Сделайте .txt файлы такого же длинного наименования и попытайтесь открыть. Так что задача не пытаться что-то изобразить на VBA, а сделать так, чтобы при открытии файлов, до того, как по расширению будет распознано, что его надо открывать Excel’ем, или чем-то другим — перед именем подставлялся префикс

    Цитата
    Сообщение от Zeag
    Посмотреть сообщение

    \?



    0



    0 / 0 / 0

    Регистрация: 21.03.2017

    Сообщений: 35

    28.03.2021, 16:08

     [ТС]

    18

    Punkt5,

    Ошибка не связана с Excel. Сделайте .txt файлы такого же длинного наименования и попытайтесь открыть

    Вы не правы. Переименовал расширение файла на .txt, блокнот открыл без проблем
    Попробовал переименовать расширение на .doc, Word, также, открыл без проблем



    0



    Punkt5

    малоболт

    1143 / 442 / 193

    Регистрация: 30.01.2020

    Сообщений: 1,095

    28.03.2021, 16:12

    19

    Если у вас такая фигня только с файлами Excel, можно попробовать сделать bat-файл типа:

    Windows Batch file
    1
    
    cmd /C "START "" /I "C:Program FilesMicrosoft OfficeOFFICE11excel.exe" \?%1"

    где вместо C:Program FilesMicrosoft OfficeOFFICE11excel.exe укажите полный путь к вашему excel.exe.
    И переназначьте открывание всех файлов с расширениями .xls* на этот батник.
    Ну, или какой-нибудь аналогичный скрипт на .vbs, .js, PowerShell, autoit. Как понимаю, правка реестра не рассматривается, поскольку хочется распространяемого решения.



    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 не принимает длинные имена файлов
    Выдает ошибку WinError206, если длина файла большая, помогите исправить.

    import pdfkit
    import…

    Укоротить длинные имена до размера K символов, а те имена, которые короче K символов дополнить восклицательными знаками
    Дан список из N имён. Необходимо укоротить длинные имена до размера K символов, а те имена, которые…

    Длинные имена
    Добрый вечер!
    Понадобилось перейти на 12.04 с 13.04, но я в шоке, что файлы с home каталога не…

    Длинные имена таблиц в SQL запросах
    Каким образом использовать длинные имена таблиц в 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. Как не парадоксально, но архиваторы тоже умеют работать с длиннющими путями и можно забэкапить часть ветки а потом раскрыть её уже в другом месте.

    По вопросам из тем форума, личку не читаю.

    Понравилась статья? Поделить с друзьями:
  • Длинная черта в word
  • Длинная формула если в excel
  • Длинна пробела в word
  • Длина ячейки excel формула
  • Дистанционные курсы по word