Почему не скачивается файл эксель

Обновлено: 06.07.2024

Что такое большой файл? Ну так чтобы реально большой? В бытность свою я думал, что это файлик на 50-60 тыс строк записей. И оставался я бы в таком неведении до сих пор, но пришлось выполнять один проект, в котором надо было работать с файлами на 600-800 тыс строк. Хождение по мукам — под катом:

Что сначала

А сначала, друзья мои, ринулись мы в самое простое, что можно придумать. Interop.Excell, и все дела. Казалось. Ага, щаз. Как показали тестовые испытания, данный способ открытия приводил к тому, что за час было прочитано 200 тыс строк экселя, приложение активно потребляло оперативку, и раздвигало плечами остальные процессы на машине. Кончилось все ожидаемо, но следственный эксперимент надо было довести до конца — на 260 тысячах приложение свалилось в OutOfMemory на машине с 4 Гб. Стало понятно, что в лоб решить проблему не получится

Google it

Сколько нам открытий чудных… Гугль привел, как ни странно, в msdn, где я познакомился с двумя методами открытия очень больших файлов: DOM и SAX. Уж за давностью времен не вспомню, но какой то из них отвалился по причине опостылевшей уже на тот момент OutOfMemory, а второй был совершенно неюзабелен в плане доступа к данным. Почему — читаем ниже.

Из чего же, из чего же

Сделаны наши эксельки. Ни для кого, кто решил копнуть формат чуть глубже, не станет секретом, что в отличие от бинарным xls, xlsx — по сути zip архив с данными. Достаточно поменять расширение ручками и распаковать архив в папку — и мы получим всю внутреннюю структуру документа, что есть не что иное, как набор xml файлов и сопутствующей информации. Как оказалось, в корневом xml нет текстовых данных. Вместо этого мы имеем набор индексов, которые ссылаются на вспомогательный файл, в котором представлены пары «ключ/значение» Одним из вышеприведенных способов открыть то файл можно, но при этом нужно копаться в сопутствующих файлах и вытаскивать из них текстовые значения. Мрак.

И отступила тьма

После долгих мытарств и стенаний родилось следующее:

Наши любимые юзинги, которые некоторые личности забывают указывать:

using System;
using System.Collections. Generic ;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Linq;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Spreadsheet;

* This source code was highlighted with Source Code Highlighter .

Собственно, сам код:

public delegate void MessageHave( string message);

public delegate void _DataLoaded( List < string > data);

public delegate void _NewProcent( int col);

public static _DataLoaded DataLoaded;

public static _NewProcent NewProcent;

public static MessageHave MessageHave_Event;

id++;
if (id == calc)
NewProcent(id);
calc += 1000;
>
>
DataLoaded(lines);
>
cnn.Close();
>
catch (Exception ex)
MessageHave_Event( "Exception: " + ex.Message);
cnn.Close();
>
>
>

* This source code was highlighted with Source Code Highlighter .

Код показал производительность порядка 15-20 минут на файлах в 600-800 тыс строк записей.

Если кому то реализация покажется кривой — сильно не пинать :) Выслушаю все комментарии

Проблема совместимости


Если вы пытаетесь открыть документ, но программа выдает ошибку, попробуйте открыть его в более поздней версии Office. Дело в том, что начиная с 2007 года, был добавлен новый формат xsls – расширенный. И Excel, выпущенный до этого времени, просто не откроет книгу. Внимательно посмотрите на расширение файла и на версию вашего офисного пакета. Они могут быть несовместимы.

Самый лучший вариант – установить последнюю версию Microsoft Office. В каждом следующем релизе поддерживаются все старые форматы.

Настройка параметров

Чтобы избавиться от предупреждения, проделайте следующее:

Ошибка сопоставлений

  1. Зайдите в Параметры. Легче всего сделать это через поиск, просто напечатав запрос. Для Windows 7 и более ранних версий воспользуйтесь кнопкой «Пуск».
  2. Перейдите в раздел «Приложения».
  3. Далее щелкайте по ссылке «Приложения по умолчанию».
  4. Нажмите «Выбор стандартных приложений для типов файлов » для Windows 10 и «Назначение программы для открытия файлов этого типа» для 7-ки.
  5. В конце списка найдите расширения «xsl», «xsls», «xslt», «xsltm» и т.д. Все должны начинаться с xsl.
  6. Проверьте, с помощью какой программы они открываются. Если настроено неверно, нажмите на приложение или "плюс" и в стандартном окне выбора приложений выберите Excel. Это надо проделать для каждого расширения отдельно.
  7. Если в списке выбора Excel не появился, то нажимайте кнопку «Обзор».
  8. В папке Program files ищите папку «Microsoft office».
  9. Далее заходите в папку «Office№», где № - это номер вашей версии. Например, 12 или 15.
  10. Вам нужен исполняемый файл EXCEL.exe. Иногда он помечается как «приложение».
  11. Дважды щелкайте по ярлыку, и сопоставление будет создано.

Проблема с надстройками


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

Внизу вы увидите выпадающий список «Управление». Выберите в нем пункт «Надстройки COM» и нажмите кнопку «Перейти…». В окне появится перечень расширений. Снимите галочки со всех элементов.

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




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

Повреждение файла

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

  • Откройте программу и нажмите кнопку главного меню или меню «Файл» (зависит от версии).
  • Перейдите в каталог с файлом и нажмите на имя файла в окне.
  • Внизу найдите слово «Открыть». Щелкните по треугольнику около него и выберите «Открыть и восстановить».
  • Нажмите «Восстановить».
  • Если это не помогло, то вернитесь к окну путем повторного выполнения вышеуказанных действий, и нажмите «Извлечь данные».
  • Далее выберите «Преобразовать формулы в значения» (все формулы пропадут) или «Восстановить формулы».
  • После этого возможно данные будут восстановлены. Сохраните документ.

Вирусы

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

  • Нажать правую кнопку мыши на кнопке «Пуск» и выбрать «Приложения и возможности».


  • Найти в списке Microsoft Office и нажать кнопку «Изменить».


  • Разрешить выполнение операций и выбрать опцию «Восстановить».


Нестандартные файлы

Со временем разработчики все больше усложняют пакет Office, добавляя новые возможности. Соответственно растет и число расширений, которые должны создавать и открываться в Excel. В частности, в версии 2007 года появился формат XLSM. Файлы этого типа представляют собой большую таблицу с поддержкой макро-элементов. Следует выяснить, почему xlsm не открывается в Excel?

  • Старая версия. Обновите офисный пакет.
  • Сбой в учетной записи. Создайте новый аккаунт и попробуйте зайти под ним.
  • Проблема в реестре. Для вызова реестра нажмите Win и R и в окне введите regedit


  • Перейдите по ветке HKEY_CURRENT_USER\Software\Microsoft\Office\12.0 и удалите последнюю папку. У вас цифры могут быть другими – зависит от версии. Например, 2007 – это 12, 2010 – 14, 2013 – 14, 2016 – 16.


Еще один формат – CSV. Он был создан для совместимости Excel и данных из WEB и сторонних приложений. Иногда файл csv в Excel открывается иероглифами. Здесь проблема заключается в кодировке. Сделайте следующее:

  1. Перейдите на вкладку «Данные» и выберите пункт «Из текста».
  2. В окне открытия выберите тип «Все файлы» и нажмите «Открыть».
  3. Появится окно, в котором можно установить кодировку. Чаще всего используется 1251 или Юникод. Попробуйте выбирать разные.


Многооконный режим

По умолчанию все книги Excel 2007 – 2013 открываются в одном окне. Вы можете изменить это, если работаете одновременно с несколькими документами. Более поздние версии уже открывают разные окна автоматически. Если ваш Office открывает книгу в одном и том же окне, зайдите через «Пуск» в главное меню и запустите еще один экземпляр программы. Теперь вы увидите на панели задач два ярлыка. Так их можно открыть сколько угодно.

Если все проблемы устранены, прочитайте о том, как использовать горячие клавиши в Excel.

Microsoft Excel документ не сохранен? Проверьте надстройки стороннего разработчика и разрешения, убедитесь в наличии места на диске, попробуйте сохраниться с новым именем или в другое место, измените формат, отключите на ПК / ноутбуке антивирусную программу и убедитесь в наличии доступа. Ниже подробно рассмотрим, в чем могут быть причины такой ошибки, и как ее устранить.

Причины, почем не сохранен Microsoft Excel

Для начала выделим несколько причин, почему файл Эксель не сохраняется, хотя вы все делаете правильно. Этому может быть несколько объяснений:

  • надстройки сторонних разработчиков;
  • сбои в процессе сохранения;
  • отсутствие необходимых разрешений;
  • утрачено соединение с Microsoft Excel;
  • недостаток места на диске;
  • действие антивирусной программы;
  • отсутствие доступа;
  • длина пути больше 218 знаков;
  • нестабильное подключение к Сети (если документ Microsoft Excel не сохранен при работе через Интернет);
  • прочие проблемы.

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


Что делать

Зная возможные проблемы, связанные с Microsoft Excel, можно принять решение по дальнейшим шагам.

С чего начать

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

Сохранитесь с новым именем:

  1. Войдите в «Файл» и жмите «Сохранить как…».
  2. Выберите другое имя.


Переместите первоначальный лист в новый документ:

  1. Откройте новый документ.
  2. Добавьте лист заполнителя с помощью Shift+F11.
  3. Сгруппируйте листы. Для этого жмите 1-й лист данных, а после зафиксируйте Shift и кликните на последний лист данных.
  4. Жмите на сгруппированные листы правой кнопкой мышки и «Переместить или скопировать».
  5. В перечне «В книгу» выберите «Новая книга».
  6. Жмите «ОК».

После этих действий активные листы перемещаются в новый документ.

Измените формат, если Эксель не дает сохранить файл:

  1. Жмите на «Файл».
  2. Выберите «Сохранить как».
  3. В перечне «Тип . » выберите формат, который будет отличаться от текущего. Попробуйте сохраниться в XLSM или XLSX.


Сохранитесь в другое место:

  1. Жмите «Файл».
  2. Выберите «Сохранить как».
  3. Впишите имя и выберите другое место, к примеру, съемный или второй диск.

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

Проверьте, будет ли сохранен документ Microsoft Excel в исходное место:

  1. Создайте файл Эксель.
  2. Войдите в «Файл» и «Сохранить как».
  3. В поле «Папка» жмите на папку, где хранится исходный файл.
  4. В поле «Имя файла» введите имя для нового документа Microsoft Excel.
  5. Выберите «Сохранить».


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

Дополнительные шаги

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

Проверьте, будет ли Microsoft Excel сохранен в безопасном режиме

Распространенные причины, почему Эксель не сохраняет файл — конфликт с антивирусом, применение надстроек сторонних организаций и т. д. В таком случае попробуйте перезапустить Виндовс в Safe Mode и сохранитесь на локальный жесткий диск. Если для хранения книги применяется сетевая папка, перезапустите ОС в указанном выше режиме и с поддержкой сети. После этого проверьте, сохранен ли документ Microsoft Excel. Если все нормально, снова перезагрузитесь в обычном режиме и повторите действие.

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


Закройте лишние приложения

Причиной, почему в Эксель документ не сохранен, может быть прерывание процесса. К примеру, при выполнении работы могла быть нажата кнопка Esc, или имело место вмешательство сторонней программы, аппаратный / программный сбой. Для решения проблемы временно закройте запущенные программы, а после попробуйте, будет ли сохранен документ Microsoft Excel или нет.

Проверьте работу сети

При появлении проблемы при добавлении Microsoft Excel в сетевую папку убедитесь в работе локальной сети. Если подключение работает корректно, проверьте пинг, который может быть причиной проблем.

Убедитесь в наличии места на диске

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

Получите нужные разрешения

Если документ Microsoft Excel не сохранен, причиной может быть отсутствие прав на запись. Чаще всего ошибка возникает, если пользователь не имеет прав администратора. Попробуйте создать отдельную папку на «D» и сохраниться в нее. Если необходимы данные по владельцу папки, войдите в «Безопасность», а после жмите «Дополнительно».

Отключите временно антивирусное ПО


Отключите общий доступ

Трудности могут возникать из-за попытки одновременного сохранения Майкрософт Эксель двумя разными людьми. В таком случае нужно согласовать работу и получить единоличный доступ к исправлению.

Введите правильный путь

В комментариях расскажите, какое решение вам подошло, и какие еще методы можно использовать, если Microsoft Excel не сохранен.

Excel - открытие файла в режиме защищенного просмотра

Чтобы остановить этот процесс и открыть файл в нормальном режиме, нажимаем на кнопку «Отмена». После этого щелкаем по файлу правой кнопкой мыши и выбираем строку «Свойства».

Выбор свойств файла в контекстном меню

В открывшемся окне нажимаем кнопку «Разблокировать» и, затем, кнопку «ОК».

Окно свойств файла

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

Как отключить режим защищенного просмотра

Теперь же рассмотрим, как сделать, чтобы Excel 2010 открывал файлы из интернета сразу в нормальном режиме. Для этого в меню «Файл» программы выбираем строку «Параметры».

Выбор строки Параметры в Меню Файл

В открывшемся окне выбираем «Центр управления безопасностью», а на его странице нажимаем кнопку «Параметры центра управления безопасностью…».

Выбор Центра управления безопасностью в окне Параметры Excel

В окне «Центр управления безопасностью» выбираем «Защищенный просмотр» и убираем галку у строки «Включить защищенный просмотр для файлов из интернета» и подтверждаем выбор, нажав кнопку «ОК».

Параметры Excel - Центр управления безопасностью

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

А если файл из интернета все-равно не открывается…

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

Надежные расположения в Центре управления безопасностью Excel

Хочу напомнить, что не стоит забывать о проверке скачанных из интернета файлов на вирусы, особенно при отключенном режиме защищенного просмотра.

Читайте также: