Как преобразовать xml в эксель

Преобразование файлов Excel в XML и обратно

Немного об Excel и XML

Итак, прежде чем узнать, как открыть, создать или перевести файл XML в Excel и обратно, давайте поближе познакомимся с типами этих файлов. Здесь нужно сразу отметить, что документы Excel имеют множество форматов, в то время, как XML — и есть формат файла. Поэтому не стоит путать эти два понятия.

Microsoft Excel является мощной программой для вычислений с множеством полезных функций

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

Файлы XML, для более простого понимания, предназначены для хранения, обмена различных данных между утилитами. Особенно часто пользуются этим языком разметки при передаче информации через интернет. И когда вам нужно перенести табличные данные из Экселя на сайт, например, то вам нужно будет преобразовать свой документ, чтобы он правильно отображался. Поэтому давайте не будем оттягивать момент истины и сразу приступим к выполнению операции.

Как преобразовать Excel в XML

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

  1. Самый простой способ, который может не сработать в некоторых случаях, это сохранение файла в нужном формате в самой программе Microsoft Excel. Для этого откройте необходимый документ в этом приложении. Затем нажмите на кнопку «Файл» (рассматривается на примере Office 2013, в других версиях процесс сохранения может несколько отличаться) в верхнем левом углу окна Экселя, затем пункт «Сохранить как», после чего выберите место сохранения документа, дайте ему имя и во вкладке типа файла укажите «XML данные». После этого проверьте, правильно ли всё у вас получилось. Если нет, то пробуем следующие способы.
  2. Итак, если возникает ошибка в предыдущем случае, то, возможно, в вашей копии программы не предусмотрена поддержка и соответствующие надстройки. Чтобы их установить перейдите на сайт компании Microsoft http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=3108, скачайте и инсталлируйте этот файл к себе на компьютер или ноутбук. Далее, запустите программу Microsoft Excel и нажмите на большую цветную кнопку в левом верхнем углу окна приложения (здесь мы уже смотрим пример на версии 2007-го года). В появившемся блоке кликните по параметрам, слева от выхода из утилиты. Теперь зайдите в пункт надстроек и нажмите на кнопку «Перейти» напротив пункта «Управление». Выскочит диалоговое окно, где нужно кликнуть по обзору и найти документ, который вы скачали с сайта Майкрософта ранее. Теперь кликаем ОК и переходим в основное окно программы, где у вас теперь есть вкладка XML Tools — с помощью него теперь вы спокойно можете создать файл XML из существующей таблицы. Сохранять его нужно аналогично предыдущему пункту.
  3. Если вам совсем не хочется загружать и себя, и свой компьютер такой информацией, то можете прибегнуть к помощи специальных утилит-конвертеров или онлайн-версий этих программ. К примеру, вы можете загрузить приложение Format Factory, которое позволит вам совершить все необходимые действия. Но стоит помнить, что сохранённые и преобразованные таким образом файлы не всегда работают в дальнейшем. То есть во время операции могут повредиться сектора или области в памяти документа, что негативно скажется на нём — он попросту может не открыться в XML-редакторе, например. Поэтому рекомендуется использовать либо профессиональные программы, либо сам Microsoft Excel.

Как перевести XML в Excel

Прежде чем перевести XML в Excel, нужно его для начала открыть. Рассмотрим весь этот непродолжительный процесс ниже. Итак, приступаем:

  1. Запустите программу Microsoft Excel с помощью ярлыка на рабочем столе или через меню проводника.
  2. Нажмите на «Открыть другие книги» внизу главной страницы, если вы используете Office В других версиях процесс может несколько отличаться.
  3. Далее, нажимаем на «Компьютер» или другое место, где расположен ваш XML-файл, затем кликните «Обзор» и смените в появившемся окне тип данных на «Файлы XML».
  4. Теперь ищем необходимый файл и открываем его в нашей программе с помощью одноимённой кнопки.
  5. Далее, обсудим то, как преобразовать наш документ. Перейдите во вкладку разработчика, затем нажмите на кнопку импорта.
  6. В открывшемся окне нужно будет снова найти и выбрать наш документ, над которым вы и хотите произвести действие, затем кликаем на кнопку «Импорт».
  7. Затем настраиваете всё под себя: область для импорта, место сохранения и другие параметры. После чего вы получите таблицу, которую позже можно сохранить в нужном для вас формате. Как видите, ничего сложного нет.

Подведём итоги

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

Источник: nastroyvse.ru

Как xml перевести в excel

Содержание статьи

  • Как xml перевести в excel
  • Как создать xml документ
  • Как перенести из Exel в Word

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

Использование встроенных функций Microsoft Excel

1. Запустить Microsoft Excel.

2. В разделе «Файл» перейти на вкладку «Открыть».

3. В открывшемся окне найти и выделить необходимый для работы файл XML.

4. Нажать кнопку «Открыть» (в правом нижнем углу окна).

5. После того как файл открылся опять активировать вкладку «Файл».

6. Пункт «Сохранить как…».

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

Читайте также:  Как выделить таблицу в excel жирными линиями

8. Кликнуть по полю «Тип файла» и выбрать один из появившихся способов сохранения документа:

– Книга Excel 97-2003;

– Книга Excel с поддержкой макросов;

– или Книга Excel).

9. Нажать на пункт «Сохранить».

Импорт файлов формата xml (только для документов с простой структурой)

1. Запустить программу Excel.

2. Открыть раздел «Файл».

3. Активировать подраздел «Параметры».

4. В появившемся окошке перейти во вкладку «Настройка ленты», где кликнуть на пункт «OK».

5. Нажать на подраздел «Разработчик».

6. На ленте в блоке инструментов кликнуть по пункту «Импорт».

7. Найти необходимый файл. В нижнем правом углу нажать кнопку «Импорт».

8. В открывшемся диалоговом окне, предлагающем создать программе Excel схему, кликнуть на кнопку «OK».

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

10. В открывшемся окне «Сохранение документа» кликнуть по кнопке «Сохранить».

Преобразование файла XML при отсутствии на компьютере установленной программы Microsoft Excel Microsoft Excel

В этом случае рекомендуется использовать специальные ресурсы для преобразования документов формата XML в excel. Одним из наиболее популярных сервисов является бесплатный онлайн-конвертер Convertio.

1. С помощью браузера перейти на сайт Convertio.

2. Выбрать один из способов загрузки документа:

– с жестокого диска;

– из хранилищ Dropbox или Google Drive;

– по ссылке из сети «Интернет».

3. В случае если файл хранится на компьютере, необходимо выбрать пункт «С компьютера».

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

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

6. В появившемся списке кликнуть на кнопку «Документ».

8. Определиться с форматом («XLS» или «XLSX»).

9. Убедившись, что в окно конвертера расширение добавлено кликнуть по пункту «Преобразовать».

Вот таких три нехитрых способов перевести xml в excel.

Источник: www.kakprosto.ru

Конвертация файлов XML в форматы Excel

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

Процесс конвертации

XML-файлы написаны на специальном языке разметки чем-то похожим на HTML веб-страниц. Поэтому у этих форматов довольно сходная структура. В то же время, Эксель – это в первую очередь программа, имеющая несколько «родных» форматов. Самые известные из них: Книга Excel (XLSX) и Книга Excel 97 – 2003 (XLS). Выясним основные способы конвертации файлов XML в эти форматы.

Способ 1: встроенный функционал Excel

Программа Excel отлично работает с файлами формата XML. Она может открывать их, изменять, создавать, сохранять. Поэтому самый простой вариант поставленной перед нами задачи — это открыть данный объект и сохранить его через интерфейс приложения в виде документов XLSX или XLS.

  1. Запускаем Эксель. Во вкладке «Файл» переходим по пункту «Открыть».

Активируется окно открытия документов. Переходим в директорию, где хранится нужный нам документ XML, выделяем его и жмем на кнопку «Открыть».

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

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

Из предложенных вариантов выбираем Книга Excel или Книга Excel 97-2003. Первый из них более новый, второй – уже несколько устаревший.

  • После того, как выбор произведен, жмем на кнопку «Сохранить».
  • На этом процедура конвертации файла XML в формат Excel через интерфейс программы окончена.

    Способ 2: импорт данных

    Вышеописанный способ подходит только для файлов XML с самой простой структурой. Более сложные таблицы при конвертации таким способом могут быть переведены некорректно. Но, существует ещё один встроенный инструмент Excel, который поможет корректно произвести импорт данных. Он расположен в «Меню разработчика», которое по умолчанию отключено. Поэтому, прежде всего, его нужно активировать.

      Перейдя во вкладку «Файл», кликаем по пункту «Параметры».

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

    Переходим во вкладку «Разработчик». На ленте в блоке инструментов «XML» жмем на кнопку «Импорт».

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

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

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

    После этих действий таблица XML будет вставлена в окно программы. Для того чтобы сохранить файл в формате Excel кликаем по иконке в виде дискеты в верхнем левом углу окна.

  • Открывается окно сохранения, в котором нужно определить директорию, где будет храниться документ. Формат файла на этот раз будет уже предустановлен XLSX, но при желании вы можете раскрыть поле «Тип файла» и установить другой формат Эксель – XLS. После того, как настройки сохранения выставлены, хотя в данном случае они могут быть и оставленными по умолчанию, жмем на кнопку «Сохранить».
  • Читайте также:  Убрать пробелы в excel в начале

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

    Способ 3: онлайн-конвертер

    Тем пользователям, у которых по какой-то причине не установлена на компьютере программа Эксель, но нуждающимся в срочном преобразовании файла из формата XML в EXCEL, можно воспользоваться одним из множества специализированных онлайн-сервисов для конвертации. Одним из наиболее удобных сайтов подобного типа является Convertio.

    1. Переходим на данный веб-ресурс с помощью любого браузера. На нем можно выбрать 5 способов загрузки конвертируемого файла:
      • С жесткого диска компьютера;
      • Из онлайн-хранилища Dropbox;
      • Из онлайн-хранилища Google Drive;
      • По ссылке из интернета.

    Так как в нашем случае документ размещен на ПК, то жмем на кнопку «С компьютера».

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

    Существует также альтернативный вариант добавления файла на сервис. Для этого нужно просто перетянуть его название мышкой из Проводника Windows.
    Как видим, файл добавился на сервис и находится в состоянии «Подготовлено». Теперь нужно выбрать необходимый нам формат для конвертации. Кликаем по окошку рядом с буквой «В». Открывается список групп файлов. Выбираем «Документ». Далее открывается перечень форматов. Выбираем «XLS» или «XLSX».

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

    Как видим, в самом Экселе есть встроенные инструменты, позволяющие преобразовать файл формата XML в один из «родных» форматов этой программы. Простейшие экземпляры можно легко конвертировать через обычную функцию «Сохранить как…». Для документов с более сложной структурой существует отдельная процедура преобразования через импорт. Те пользователи, которые по какой-либо причине не могут воспользоваться данными инструментами, имеют возможность выполнить задачу с помощью специализированных онлайн-сервисов для конвертации файлов.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник: lumpics.ru

    Собрать данные из XML файлов в Excel и экспортировать

    Microsoft Excel – удобный инструмент для организации и структурирования самых разнообразных данных. Он позволяет обрабатывать информацию разными методами, редактировать массивы данных.

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

    Как создать XML-файл из Excel

    XML – стандарт файла для передачи данных в Сети. Excel поддерживает его экспорт и импорт.

    Рассмотрим создание XML-файла на примере производственного календаря.

    1. Сделаем таблицу, по которой нужно создать XML файл в Excel и заполним ее данными.
    2. Создадим и вставим карту XML с необходимой структурой документа.
    3. Экспортируем данные таблицы в XML формат.

    1. Наша таблица – производственный календарь.
    2. Создаем в любом текстовом редакторе (например, «Блокнот») желаемую карту XML структуры для генерации файла сохраним. В данном примере буде использовать следующую карту структуры:

  • Открываем инструмент «Разработчик». Диалоговое окно «Источник» на вкладке XML.
  • Если программа Excel не видит карт XML, их нужно добавить. Жмем «карты XML». И указываем путь к нашему файлу с выше указанной схемой карты созданной в текстовом редакторе.
  • Добавить ОК.
  • В правой колонке появляются элементы схемы. Их нужно перетащить на соответствующие названия столбцов таблицы.
  • Проверяем возможен ли экспорт.
  • Когда все элементы будут сопоставлены, щелкаем правой кнопкой мыши по любой ячейке в таблице – XML – экспорт.
  • Сохраняем в XML файл.

    Другие способы получения XML-данных (схемы):

    1. Скачать из базы данных, специализированного бизнес-приложения. Схемы могут предоставляться коммерческими сайтами, службами. Простые варианты находятся в открытом доступе.
    2. Использовать готовые образцы для проверки карт XML. В образцах – основные элементы, структура XML. Копируете – вставляете в программу «Блокнот» – сохраняете с нужным расширением.

    

    Как сохранить файл Excel в формате XML

    Один из вариантов:

    1. Нажимаем кнопку Office. Выбираем «Сохранить как» – «Другие форматы».
    2. Назначаем имя. Выбираем место сохранения и тип файла – XML.

    Если выдает ошибку, книгу можно сохранить в виде таблицы XML 2003 либо веб-страницы. С этими форматами проблем, как правило, не возникает.

    1. Скачать конвертер XLC в XML. Либо найти сервис, с помощью которого можно экспортировать файл онлайн.
    2. Скачать с официального сайта Microsoft надстройку XML Tools Add-in. Она в бесплатном доступе.
    3. Открываем новую книгу. Кнопка Office – «Открыть».

    Как открыть XML файл в Excel

    1. Меняем формат на «файлы XML». Выбираем нужный файл. Жмем «Открыть».
    2. Способ открытия – XML-таблица. ОК.
    3. Появляется оповещение типа

    Жмем ОК. С полученной таблицей можно работать, как с любым файлом Excel.

    Как преобразовать файл XML в Excel

    1. Меню «Разработчик» – вкладка «Импорт».
    2. В диалоговом окне выбираем файл XML, который хотим преобразовать.
    3. Нажимаем «Импорт». Программа Excel предложит самостоятельно создать схему на основе полученных данных. Соглашаемся – ОК. Откроется окно, где нужно выбрать место для импортируемого файла.
    4. Назначаем диапазон для импорта. Лучше брать с «запасом». Жмем ОК.

    Созданную таблицу редактируем и сохраняем уже в формате Excel.

    Как собрать данные из XML файлов в Excel

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

    Каждый новый файл будет привязываться к имеющейся карте. Каждому элементу в структуре таблицы соответствует элемент в карте. Допускается только одна привязка данных.

    Чтобы настроить параметры привязки, откройте в меню «Разработчик» инструмент «Свойства карты».

    1. Каждый новый файл будет проверяться программой Excel на соответствие установленной карте (если поставим галочку напротив этого пункта).
    2. Данные могут обновляться. Либо новая информация добавится в существующую таблицу (имеет смысл, если нужно собрать данные из похожих файлов).

    Это все ручные способы импорта и экспорта файлов.

    Источник: exceltable.com

    Экспорт Excel в XML и наоборот

    Вы можете конвертировать файл Excel в файл данных XML или наоборот. Это позволяет обмениваться информацией между различными приложениями. Для начала откройте вкладку Developer (Разработчик).

    Вот данные, которые мы хотим преобразовать в файл XML:

    Сперва создадим схему, основанную на исходных данных в формате XML. Схема определяет структуру XML-файла.

      Excel для этой цели не подойдёт, поэтому откройте, к примеру, Блокнот и вставьте следующие строки:

    Примечание: Теги названы по именам столбцов, но вы можете дать им любое название. Например, вместо – .

    1. Сохраните файл как schema.xml.
    2. Откройте книгу Excel.
    3. Кликните по Source (Источник) на вкладке Developer (Разработчик). Откроется XML панель задач.
    4. Чтобы добавить карту XML, нажмите кнопку XML Maps (XML карты).Появится диалоговое окно XML Maps (Карты XML).
    5. Нажмите Add (Добавить).
    6. Выберите schema.xml и дважды кликните ОК.
    7. Теперь просто перетащите 4 элемента из дерева в XML панели задач на лист (строка 1).
    8. Нажмите кнопку Export (Экспорт) в разделе XML на вкладке Developer (Разработчик).
    9. Сохраните файл и нажмите Enter.

    Это экономит немало времени!

    Примечание: Для импорта XML-файла откройте пустую книгу. На вкладке Developer (Разработчик) нажмите кнопку Import (Импорт) и выберите XML-файл.

    Источник: office-guru.ru

    Простой экспорт в Excel XML

    При разработке системы электронного документооборота потребовалось реализовать функции для экспорта данных в популярных форматах. В частности, в формате Microsoft Excel. Требования к экспорту были довольно простые – экспортировать данные с минимумом форматирования, т.е. никаких объединенных ячеек, игр со шрифтами и т.п. Форматы экспорта XLSX и Excel XML.

    В данном случае расскажу про Excel XML.

    Итак, в любой системе оперирующей табличными данными раной или поздно возникает потребность экспорта данных. Цели экспорта разные:

    • передача данных в табличном виде
    • анализ данных в соотв. системах
    • построение диаграмм
    • построение сводных таблиц и т.п.

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

    Задача

    Технические требования сформулировал тривиально:

    • Оформить экспортирующий механизм в виде автономного класса
    • Реализовать в классе набор функций для записи значений ячеек и ряда
    • Возможность работы с неограниченным объемом данных.

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

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

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

    Помимо описанных требований, понадобилось добавить сервисные функции:

    • Включение автофильтра
    • Сжатия файла в zip.

    Реализация

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

    Правда, именно в этой функции используются сущности системы документооборота — organization (организация) и user (пользователь). Заменить эти сущности на, скажем, строковые значения, не проблема.

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

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

    Но вот запись рядов – процесс поинтереснее. Класс должен работать быстро и обрабатывать неограниченный объем данных, ведь записей может быть тысяч сто или даже миллион! Хочешь скорости – работай с памятью, хочешь неограниченный объем данных – работай с диском. Чтобы помирить требования, реализовал функции resetRow и flushRow.
    Первая – очищает текущий ряд, после чего его снова можно наполнять данными, а вторая – записывает текущий ряд в открытый файл на диск. Их совместное использование позволяет выдерживать баланс между скоростью и объемом используемой памяти.

    Каждая ячейка записывается функцией соответствующей типу данных, а именно appendCellxxx, где xxx – тип данных. Допустимые типы данных: Num, String, Real, DateTime, Date, Time, Link. Пример функции для записи числового значения:

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

    Применение

    Использование описанного класса основано на экспорте данных с помощью провайдера CArrayDataProvider. Однако, предполагая, что объем экспортируемых данных может оказаться очень большим применен специальный итератор CDataProviderIterator, который перебирает возвращаемые данные по 100 записей (можно указать иное число записей).

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

    Скорость

    Кстати, на собственном опыте убедился, как важно предполагать возможность существования больших объемов данных при пакетной операции, такой как экспорт.
    Изначально, пытался осуществлять экспорт данных используя CActiveDataProvider, что требовало при экспорте 1000 записей порядка 240 секунд! Изменив запрос так, чтобы использовать CArrayDataProvider сократил время экспорта 1000 записей до 0.5 секунды!
    Специально для этой публикации замерил показатели экспорта.
    Экспортировал 1626 записей с 9 атрибутами, представляющих собой информацию о закрытых инцидентах (см. ITSM).

    Исходный вид экспортируемой таблицы

    (извините, картинка исчезает после публикации)

    Результат

    (извините, картинка исчезает после публикации)

    Показатели экспорта

    Объем конечного файла: 1 312 269
    Объем сжатого файла: 141 762
    Затраченное время: примерно 0.5 сек

    Кому интересно, может получить исходный код моего класса AlxdExportExcelXML безвозмездно. Только надо не забыть поправить функцию writeDocumentProperties, чтобы отвязаться от сущностей системы документооборота organization и user, или использовать свои аналогичные сущности с соответствующими свойствами.

    Источник: habr.com