Excel ограничение на длину имени файла

Технические характеристики и ограничения листа и книги

Параметр

Максимальное значение

Количество открытых книг

Ограничено объемом доступной оперативной памяти и ресурсами системы

Общее количество строк и столбцов на листе

1 048 576 строк и 16 384 столбца

Ширина столбца

255 знаков

Высота строки

409 пунктов

Разрывы страниц

1 026 горизонтальных и вертикальных

Общее количество знаков в ячейке

32 767 знаков

Число знаков в верхнем и нижнем колонтитуле

255

Максимальное число переводов строки в ячейке

253

Количество листов в книге

Ограничено объемом доступной оперативной памяти (по умолчанию 1 лист)

Количество цветов в книге

16 миллионов цветов (32-битовый спектр с полным доступом к 24-битовому спектру)

Именованные представления в книге

Ограничено объемом доступной оперативной памяти

Количество уникальных форматов/стилей ячеек

65 490

Количество стилей заливки

256

Количество стилей и толщин линий

256

Количество уникальных шрифтов

1 024 доступных глобальных шрифта; 512 шрифтов в каждой книге

Количество численных форматов в книге

От 200 до 250, в зависимости от установленной языковой версии Excel

Количество имен в книге

Ограничено объемом доступной оперативной памяти

Количество окон в книге

Ограничено объемом доступной оперативной памяти

Гиперссылки на листе

65 530

Количество областей в окне

4

Количество связанных листов

Ограничено объемом доступной оперативной памяти

Сценарии

Ограничено объемом доступной оперативной памяти; в итоговый отчет включается 251 сценарий, начиная с первого

Количество изменяемых ячеек в сценарии

32

Количество вычисляемых ячеек в надстройке «Поиск решения»

200

Количество пользовательских функций

Ограничено объемом доступной оперативной памяти

Пределы масштабирования

от 10 до 400 процентов

Количество отчетов

Ограничено объемом доступной оперативной памяти

Количество ссылок для сортировки

64 для однократной сортировки; не ограничено для последовательных сортировок

Количество уровней отмены

100

Количество полей в форме данных

32

Количество параметров в книге

255 параметров в одной книге

Количество элементов, которые отображаются в раскрывающихся списках фильтров

10 000

Количество независимых ячеек, которые можно выделить

2 147 483 648 ячеек

Максимальные пределы объема памяти и размера файла для книг с моделями данных

В 32-разрядной среде выделяется 2 гигабайта (ГБ) виртуального адресного пространства, которое совместно используется приложением Excel, книгой и надстройками, работающими в рамках одного процесса. Доля адресного пространства, выделяемого для модели данных, может достигать 500–700 мегабайт (МБ), но может быть и меньше, если загружаются другие модели данных и надстройки.

64-разрядная среда не накладывает жестких ограничений на размер файлов. Размер книги ограничен только объемом доступной памяти и ресурсами системы.

Начиная с Excel 2016 функция обработки больших адресов позволяет 32-разрядной версии Excel использовать в два раза больше памяти при работе в 64-разрядной операционной системе Windows. Дополнительные сведения см. в статье Изменение функции обработки больших адресов для Excel.

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

Подробнее см. в статье Спецификации и ограничения модели данных.

Количество ядер процессора

64

Длина имени файла

218 символов, включая путь к файлу. Например, C:UsernameDocumentsFileName.xlsx.

Технические характеристики и ограничения вычислений

Параметр

Максимальное значение

Точность представления чисел, разрядов, не более

15

Допустимое отрицательное число, не менее

-2,2251E+308

Допустимое положительное число, не менее

2,2251E-308

Допустимое положительное число, не более

9,99999999999999E+307

Допустимое отрицательное число, не более

-9,99999999999999E+307

Наибольшее положительное число, получаемое в формуле

1,7976931348623158E+308

Наибольшее отрицательное число, получаемое в формуле

-1,7976931348623158E+308

Длина записи формулы, знаков, не более

8 192

Внутренняя длина формулы, байт, не более

16 384 байт

Количество итераций, не более

32 767

Количество массивов в книге

Ограничено объемом доступной оперативной памяти

Количество выделенных диапазонов, не более

2 048

Количество аргументов функции, не более

255

Количество уровней вложенности функций, не более

64

Количество категорий пользовательских функций, не более

255

Количество доступных функций листа Microsoft Excel, не более

341

Размер стека операндов, не более

1 024

Перекрестная зависимость листов, не более

64 000 листов, которые могут ссылаться на другие листы

Перекрестная зависимость формул массива на разных листах

Ограничена объемом доступной оперативной памяти

Зависимость областей

Ограничена объемом доступной оперативной памяти

Зависимость областей на каждом листе

Ограничена объемом доступной оперативной памяти

Зависимости одной ячейки, не более

4 миллиарда формул, зависящих от одной ячейки

Длина содержимого связанной ячейки из закрытых книг, не более

32 767

Допустимая в расчетах дата, не ранее

1 января 1900 г. (1 января 1904 г. для системы дат 1904)

Допустимая в расчетах дата, не позднее

31 декабря 9999 г.

Интервал времени, который можно ввести, не более

9999:59:59

Технические характеристики и ограничения диаграмм

Параметр

Максимальное значение

Количество диаграмм, связанных с листом

Ограничено объемом доступной оперативной памяти

Количество листов, на которые ссылается диаграмма

255

Ряды данных в диаграмме

255

Количество точек данных в одном ряду данных для плоских диаграмм

Ограничено объемом доступной оперативной памяти

Количество элементов данных в одном ряду данных для объемных диаграмм

Ограничено объемом доступной оперативной памяти

Количество элементов данных во всех рядах данных одной диаграммы

Ограничено объемом доступной оперативной памяти

Технические характеристики и ограничения отчетов сводных таблиц и сводных диаграмм

Параметр

Максимальное значение

Отчеты сводных таблиц на листе

Ограничено объемом доступной оперативной памяти

Количество уникальных элементов в поле

1 048 576

Количество полей строк или столбцов в отчете сводной таблицы

Ограничено объемом доступной оперативной памяти

Количество фильтров отчета в отчете сводной таблицы

256 (может быть ограничено объемом доступной оперативной памяти)

Количество полей значений в отчете сводной таблицы

256

Количество формул вычисляемых элементов в отчете сводной таблицы

Ограничено объемом доступной оперативной памяти

Количество фильтров отчета в отчет сводной диаграммы

256 (может быть ограничено объемом доступной оперативной памяти)

Количество полей значений в отчете сводной диаграммы

256

Количество формул вычисляемых элементов в отчете сводной диаграммы

Ограничено объемом доступной оперативной памяти

Длина имени MDX элемента сводной таблицы

32 767

Длина строки реляционной сводной таблицы

32 767

Количество элементов, которые отображаются в раскрывающихся списках фильтров

10 000

Книги с включенным параметром «Разрешить изменять файл нескольким пользователям одновременно…»

Если для книги включен параметр Разрешить изменять файл нескольким пользователям одновременно…, тогда необходимо применять следующие сведения. Чтобы получить доступ к этому параметру, на вкладке Рецензирование нажмите кнопку Доступ к книге. Примечание. В последних версиях Excel кнопка Доступ к книге скрыта. Чтобы отобразить ее, откройте вкладку Файл и выберите пункт Параметры, а затем — категорию Панель быстрого доступа. Откройте список Выбрать команды из и выберите пункт Все команды. Прокрутите список до пункта Общий доступ к книге (старые версии). Выберите этот пункт и нажмите кнопку Добавить. Нажмите кнопку ОК. Кнопка Доступ к книге появится в верхней части окна Excel.

Параметр

Максимальное значение

Количество пользователей, которые могут одновременно открывать файл

256

Количество личных представлений в книге

Ограничено объемом доступной оперативной памяти

Количество дней, поддерживаемое журнал изменений

32 767 (по умолчанию 30 дней)

Наибольшее количество одновременно объединяемых книг

Ограничено объемом доступной оперативной памяти

Количество ячеек, которые можно выделить

32 767

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

32 (каждому пользователю соответствует свой цвет; изменения текущего пользователя выделяются темно-синим цветом)

Количество таблиц Excel в книге

0 (ноль)

Примечание: Для книги, содержащей одну или несколько таблиц Excel, невозможно включить параметр Разрешить изменять файл нескольким пользователям одновременно…

Технические характеристики и ограничения листа и книги

Параметр

Максимальное значение

Количество открытых книг

Ограничено объемом доступной оперативной памяти и ресурсами системы

Общее количество строк и столбцов на листе

1 048 576 строк и 16 384 столбца

Ширина столбца

255 знаков

Высота строки

409 пунктов

Разрывы страниц

1 026 горизонтальных и вертикальных

Общее количество знаков в ячейке

32 767 знаков

Число знаков в верхнем и нижнем колонтитуле

255

Максимальное число переводов строки в ячейке

253

Количество листов в книге

Ограничено объемом доступной оперативной памяти (по умолчанию 3 листа)

Количество цветов в книге

16 миллионов цветов (32-битовый спектр с полным доступом к 24-битовому спектру)

Именованные представления в книге

Ограничено объемом доступной оперативной памяти

Количество уникальных форматов/стилей ячеек

65 490

Количество стилей заливки

256

Количество стилей и толщин линий

256

Количество уникальных шрифтов

1 024 доступных глобальных шрифта; 512 шрифтов в каждой книге

Количество численных форматов в книге

От 200 до 250, в зависимости от установленной языковой версии Excel

Количество имен в книге

Ограничено объемом доступной оперативной памяти

Количество окон в книге

Ограничено объемом доступной оперативной памяти

Гиперссылки на листе

65 530 гиперссылок

Количество областей в окне

4

Количество связанных листов

Ограничено объемом доступной оперативной памяти

Сценарии

Ограничено объемом доступной оперативной памяти; в итоговый отчет включается 251 сценарий, начиная с первого

Количество изменяемых ячеек в сценарии

32

Количество вычисляемых ячеек в надстройке «Поиск решения»

200

Количество пользовательских функций

Ограничено объемом доступной оперативной памяти

Пределы масштабирования

от 10 до 400 процентов

Количество отчетов

Ограничено объемом доступной оперативной памяти

Количество ссылок для сортировки

64 для однократной сортировки; не ограничено для последовательных сортировок

Количество уровней отмены

100

Количество полей в форме данных

32

Количество параметров в книге

255 параметров в одной книге

Количество элементов, которые отображаются в раскрывающихся списках фильтров

10 000

Количество независимых ячеек, которые можно выделить

2 147 483 648 ячеек

Количество ядер процессора

64

Технические характеристики и ограничения вычислений

Параметр

Максимальное значение

Точность представления чисел, разрядов, не более

15

Допустимое отрицательное число, не менее

-2,2251E+308

Допустимое положительное число, не менее

2,2251E-308

Допустимое положительное число, не более

9,99999999999999E+307

Допустимое отрицательное число, не более

-9,99999999999999E+307

Наибольшее положительное число, получаемое в формуле

1,7976931348623158E+308

Наибольшее отрицательное число, получаемое в формуле

-1,7976931348623158E+308

Длина записи формулы, знаков, не более

8 192

Внутренняя длина формулы, байт, не более

16 384 байт

Количество итераций, не более

32 767

Количество массивов в книге

Ограничено объемом доступной оперативной памяти

Количество выделенных диапазонов, не более

2 048

Количество аргументов функции, не более

255

Количество уровней вложенности функций, не более

64

Количество категорий пользовательских функций, не более

255

Количество доступных функций листа Microsoft Excel, не более

341

Размер стека операндов, не более

1 024

Перекрестная зависимость листов, не более

64 000 листов, которые могут ссылаться на другие листы

Перекрестная зависимость формул массива на разных листах

Ограничена объемом доступной оперативной памяти

Зависимость областей

Ограничена объемом доступной оперативной памяти

Зависимость областей на каждом листе

Ограничена объемом доступной оперативной памяти

Зависимости одной ячейки, не более

4 миллиарда формул, зависящих от одной ячейки

Длина содержимого связанной ячейки из закрытых книг, не более

32 767

Допустимая в расчетах дата, не ранее

1 января 1900 г. (1 января 1904 г. для системы дат 1904)

Допустимая в расчетах дата, не позднее

31 декабря 9999 г.

Интервал времени, который можно ввести, не более

9999:59:59

Технические характеристики и ограничения диаграмм

Параметр

Максимальное значение

Количество диаграмм, связанных с листом

Ограничено объемом доступной оперативной памяти

Количество листов, на которые ссылается диаграмма

255

Ряды данных в диаграмме

255

Количество точек данных в одном ряду данных для плоских диаграмм

Ограничено объемом доступной оперативной памяти

Количество элементов данных в одном ряду данных для объемных диаграмм

Ограничено объемом доступной оперативной памяти

Количество элементов данных во всех рядах данных одной диаграммы

Ограничено объемом доступной оперативной памяти

Технические характеристики и ограничения отчетов сводных таблиц и сводных диаграмм

Параметр

Максимальное значение

Отчеты сводных таблиц на листе

Ограничено объемом доступной оперативной памяти

Количество уникальных элементов в поле

1 048 576

Количество полей строк или столбцов в отчете сводной таблицы

Ограничено объемом доступной оперативной памяти

Количество фильтров отчета в отчете сводной таблицы

256 (может быть ограничено объемом доступной оперативной памяти)

Количество полей значений в отчете сводной таблицы

256

Количество формул вычисляемых элементов в отчете сводной таблицы

Ограничено объемом доступной оперативной памяти

Количество фильтров отчета в отчет сводной диаграммы

256 (может быть ограничено объемом доступной оперативной памяти)

Количество полей значений в отчете сводной диаграммы

256

Количество формул вычисляемых элементов в отчете сводной диаграммы

Ограничено объемом доступной оперативной памяти

Длина имени MDX элемента сводной таблицы

32 767

Длина строки реляционной сводной таблицы

32 767

Количество элементов, которые отображаются в раскрывающихся списках фильтров

10 000

Книги с включенным параметром «Разрешить изменять файл нескольким пользователям одновременно…»

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

Параметр

Максимальное значение

Количество пользователей, которые могут одновременно открывать файл

256

Количество личных представлений в книге

Ограничено объемом доступной оперативной памяти

Количество дней, поддерживаемое журнал изменений

32 767 (по умолчанию 30 дней)

Наибольшее количество одновременно объединяемых книг

Ограничено объемом доступной оперативной памяти

Количество ячеек, которые можно выделить в общей книге

32 767

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

32 (каждому пользователю соответствует свой цвет; изменения текущего пользователя выделяются темно-синим цветом)

Количество таблиц Excel в книге

0 (ноль)

Примечание: Для книги, содержащей одну или несколько таблиц Excel, невозможно включить параметр Разрешить изменять файл нескольким пользователям одновременно…

Технические характеристики и ограничения листа и книги

Параметр

Максимальное значение

Количество открытых книг

Ограничено объемом доступной оперативной памяти и ресурсами системы

Общее количество строк и столбцов на листе

1 048 576 строк и 16 384 столбца

Ширина столбца

255 знаков

Высота строки

409 пунктов

Разрывы страниц

1 026 горизонтальных и вертикальных

Общее количество знаков в ячейке

32 767 знаков

Число знаков в верхнем и нижнем колонтитуле

255

Максимальное число переводов строки в ячейке

253

Количество листов в книге

Ограничено объемом доступной оперативной памяти (по умолчанию 3 листа)

Количество цветов в книге

16 миллионов цветов (32-битовый спектр с полным доступом к 24-битовому спектру)

Именованные представления в книге

Ограничено объемом доступной оперативной памяти

Количество уникальных форматов/стилей ячеек

65 490

Количество стилей заливки

256

Количество стилей и толщин линий

256

Количество уникальных шрифтов

1 024 доступных глобальных шрифта; 512 шрифтов в каждой книге

Количество численных форматов в книге

От 200 до 250, в зависимости от установленной языковой версии Excel

Количество имен в книге

Ограничено объемом доступной оперативной памяти

Количество окон в книге

Ограничено объемом доступной оперативной памяти

Гиперссылки на листе

65 530 гиперссылок

Количество областей в окне

4

Количество связанных листов

Ограничено объемом доступной оперативной памяти

Сценарии

Ограничено объемом доступной оперативной памяти; в итоговый отчет включается 251 сценарий, начиная с первого

Количество изменяемых ячеек в сценарии

32

Количество вычисляемых ячеек в надстройке «Поиск решения»

200

Количество пользовательских функций

Ограничено объемом доступной оперативной памяти

Пределы масштабирования

от 10 до 400 процентов

Количество отчетов

Ограничено объемом доступной оперативной памяти

Количество ссылок для сортировки

64 для однократной сортировки; не ограничено для последовательных сортировок

Количество уровней отмены

100

Количество полей в форме данных

32

Количество параметров в книге

255 параметров в одной книге

Количество раскрывающихся списков в фильтре

10 000

Технические характеристики и ограничения вычислений

Параметр

Максимальное значение

Точность представления чисел, разрядов, не более

15

Допустимое отрицательное число, не менее

-2,2251E+308

Допустимое положительное число, не менее

2,2251E-308

Допустимое положительное число, не более

9,99999999999999E+307

Допустимое отрицательное число, не более

-9,99999999999999E+307

Наибольшее положительное число, получаемое в формуле

1,7976931348623158E+308

Наибольшее отрицательное число, получаемое в формуле

-1,7976931348623158E+308

Длина записи формулы, знаков, не более

8 192

Внутренняя длина формулы, байт, не более

16 384 байт

Количество итераций, не более

32 767

Количество массивов в книге

Ограничено объемом доступной оперативной памяти

Количество выделенных диапазонов, не более

2 048

Количество аргументов функции, не более

255

Количество уровней вложенности функций, не более

64

Количество категорий пользовательских функций, не более

255

Количество доступных функций листа Microsoft Excel, не более

341

Размер стека операндов, не более

1 024

Перекрестная зависимость листов, не более

64 000 листов, которые могут ссылаться на другие листы

Перекрестная зависимость формул массива на разных листах

Ограничена объемом доступной оперативной памяти

Зависимость областей

Ограничена объемом доступной оперативной памяти

Зависимость областей на каждом листе

Ограничена объемом доступной оперативной памяти

Зависимости одной ячейки, не более

4 миллиарда формул, зависящих от одной ячейки

Длина содержимого связанной ячейки из закрытых книг, не более

32 767

Допустимая в расчетах дата, не ранее

1 января 1900 г. (1 января 1904 г. для системы дат 1904)

Допустимая в расчетах дата, не позднее

31 декабря 9999 г.

Интервал времени, который можно ввести, не более

9999:59:59

Технические характеристики и ограничения диаграмм

Параметр

Максимальное значение

Количество диаграмм, связанных с листом

Ограничено объемом доступной оперативной памяти

Количество листов, на которые ссылается диаграмма

255

Ряды данных в диаграмме

255

Количество точек данных в одном ряду данных для плоских диаграмм

32 000

Количество элементов данных в одном ряду данных для объемных диаграмм

4 000

Количество элементов данных во всех рядах данных одной диаграммы

256 000

Технические характеристики и ограничения отчетов сводных таблиц и сводных диаграмм

Параметр

Максимальное значение

Отчеты сводных таблиц на листе

Ограничено объемом доступной оперативной памяти

Количество уникальных элементов в поле

1 048 576

Количество полей строк или столбцов в отчете сводной таблицы

Ограничено объемом доступной оперативной памяти

Количество фильтров отчета в отчете сводной таблицы

256 (может быть ограничено объемом доступной оперативной памяти)

Количество полей значений в отчете сводной таблицы

256

Количество формул вычисляемых элементов в отчете сводной таблицы

Ограничено объемом доступной оперативной памяти

Количество фильтров отчета в отчет сводной диаграммы

256 (может быть ограничено объемом доступной оперативной памяти)

Количество полей значений в отчете сводной диаграммы

256

Количество формул вычисляемых элементов в отчете сводной диаграммы

Ограничено объемом доступной оперативной памяти

Длина имени MDX элемента сводной таблицы

32 767

Длина строки реляционной сводной таблицы

32 767

Книги с включенным параметром «Разрешить изменять файл нескольким пользователям одновременно…»

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

Параметр

Максимальное значение

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

256

Количество личных представлений в книге

Ограничено объемом доступной оперативной памяти

Количество дней, поддерживаемое журнал изменений

32 767 (по умолчанию 30 дней)

Наибольшее количество одновременно объединяемых книг

Ограничено объемом доступной оперативной памяти

Количество ячеек, которые можно выделить

32 767

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

32 (каждому пользователю соответствует свой цвет; изменения текущего пользователя выделяются темно-синим цветом)

Количество таблиц Excel в книге

0 (ноль)

Примечание: Для книги, содержащей одну или несколько таблиц Excel, невозможно включить параметр Разрешить изменять файл нескольким пользователям одновременно…

К началу страницы

  • 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

xuor007

0 / 0 / 0

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

Сообщений: 35

1

Excel

27.03.2021, 16:12. Показов 4813. Ответов 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

34702 / 19224 / 4037

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

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

Записей в блоге: 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



810 / 465 / 180

Регистрация: 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

810 / 465 / 180

Регистрация: 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



810 / 465 / 180

Регистрация: 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

34702 / 19224 / 4037

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

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

Записей в блоге: 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

34702 / 19224 / 4037

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

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

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

28.03.2021, 15:28

12

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

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

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

Добавлено через 1 минуту
Обычно файлы для открытия получают сканированием директорий…



0



810 / 465 / 180

Регистрация: 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

34702 / 19224 / 4037

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

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

Записей в блоге: 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

Hi,

I have a problem with linked Excel files where the full filename is too long for the linked file.

The following is a detailed description of my problem and why what I want is not possible. The problem is of course aggrivated by there being Hebrew (which causes HTTP escaping
when the files are saved in SharePoint) present.

My question is: Have I missed anything?

I would also like to know if anyone know of something being done about this?

Filename length limitations in Office and Excel:

(The most important one is the last one)

·        
http://support.microsoft.com/kb/326039
Excel has a limitation of 218 characters in a full path (driveserver + folders + filename + extension).

·        
http://www.xldatasoft.com/filename.htm
The same with more detail but not from Microsoft.

·        
http://support.microsoft.com/kb/271513
Troubleshooting saving files in Excel. One of the steps is to not exceed 218 characters.

·        
http://support.microsoft.com/kb/213983
Errors when opening files longer that 218 characters.
Look at the Cause section of this article. This contains everything you need.

The problem basically happens when linking to a file which exceeds 218 characters in its full path.

Path

http://server

/site/library/

Filename

.xlsx

Length

14

15

9

5

Total — 43

In the above example the filename is 43 characters long.

With Hebrew this just gets more complicated because of HTTP escaping.

Each non ANSI-1255 character is automatically converted into an escaped combination which is 3 characters long. For example %20, %55, %70 etc.

What this basically means is that when working with SharePoint (which uses HTTP as a transfer protocol) each Hebrew filename is 3 times as long as it
should be. With long Hebrew filenames and this 3 times multiplication it is very easy to exceed 218 characters. There appears to be a bug in Excel’s automatic data retrieval mechanism which «forgets» the actual Hebrew filename and only uses (even internally
within its memory) the escaped filename (which is now too long for the 218 characters limitation).

This does not appear to be the case when verifying the file’s existence.

The reason that this does not happen when the file is opened is because then Excel uses shared memory instead of
the path.

 

БМВ

Модератор

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

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

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