Экспорт в excel из Delphi без excel

Я ищу, чтобы экспортировать данные в excel из Delphi без необходимости владеть копией excel, это возможно?

N. B. CSV не будет делать.

8 ответов


FlexCel, ранее открытый источник, теперь управляемый TMS (http://www.tmssoftware.com/site/flexcel.asp) отлично работает.

вы также можете проверить TmxNativeExcel на http://www.torry.net. Поставляется бесплатно и использует родной формат Biff. Но я не пробовал.


попробовать zexmlss. Эта библиотека может создавать и загружать файлы формата excel 2003 XML. Поддержка объединенных ячеек, границ, вертикального и горизонтального выравнивания и других. Лицензия zlib в. Работа с Delphi 6, 7, 9-14 и Лазаря.


Я считаю, что можно создавать документы MS Office в формате HTML. Вам не нужно открывать их в веб-браузере или что-то еще, файл все еще может иметь расширение .XLS и открыть в Excel, как обычно.

Я только что создал новую таблицу и вставил цифры 1-3 в первые три ячейки столбца A и сохранил ее как HTML. Там была куча дополнительного беспорядка, который, вероятно, не все необходимо. Я снял столько, сколько мог, вот что выглядит как минимум для создайте рабочую таблицу.

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

<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<!--[if gte mso 9]><xml>
 <x:ExcelWorkbook>
  <x:ExcelWorksheets>
   <x:ExcelWorksheet>
    <x:Name>Sheet1</x:Name>
    <x:WorksheetOptions>
     <x:Selected/>
     <x:Panes>
      <x:Pane>
       <x:Number>3</x:Number>
       <x:ActiveRow>3</x:ActiveRow>
      </x:Pane>
     </x:Panes>
     <x:ProtectContents>False</x:ProtectContents>
     <x:ProtectObjects>False</x:ProtectObjects>
     <x:ProtectScenarios>False</x:ProtectScenarios>
    </x:WorksheetOptions>
   </x:ExcelWorksheet>
  </x:ExcelWorksheets>
 </x:ExcelWorkbook>
</xml><![endif]-->
</head>
<body>

<table x:str>
    <tr>
        <td x:num width=64>1</td>
    </tr>
    <tr>
        <td x:num>2</td>
    </tr>
    <tr>
        <td x:num>3</td>
    </tr>
</table>
</body>
</html>

oexport-XLSX/ODS родной Delphi импорт / экспорт библиотеки

  • никакие внешние библиотеки dll не требуются
  • нет зависимости от установки Excel или Calc (нет OLE)
  • полная поддержка unicode даже для D7, d2007
  • поддерживаемые типы ячеек: строка, число, процент, Формула, время, дата, datetime
  • форматирование ячеек: ширина ячейки + высота, горизонтальное + вертикальное выравнивание, перенос текста, шрифт, цвет фона, границы
  • col / row span
  • протестировано и работает под Delphi 2007 и XE2 32bit+64bit: должно быть совместимо со всеми D7 до XE2
  • новый OFiller: заполнить в формате docx (для Word 2007), файлы odt (OpenOffice писатель), XLSX-файл (в Excel 2007), СОД (в OpenOffice Calc, в) шаблоны

http://www.kluug.at/xlsx-ods-delphi.php

лицензировано под три-лицензией MPL/GPL/LGPL Версия: MPL 1.1/GPL 2.0 / LGPL 2.1


SMExport из Scalabium (scalabium.com) включает в себя множество форматов, включая формат Excel с установленным Excel или без него.


NativeExcel, упомянутый ранее, от Nika-Soft. Не бесплатно, но работает отлично. Я использую его уже более года без проблем. http://www.nika-soft.com/nativeexcel2/


TXLSFile библиотека В. 4.0. и компоненты XLSExport

мы успешно использовали с D2007, D2009 & D2010

Что такое TXLSFile

  TXLSFile is a Delphi library for reading and writing MS Excel 
  XLS files. It is based on direct reading and writing of files, 
  and works without OLE Automation with Microsoft Excel. 

  TXLSFile is  distributed  with  XLSExport  components  package. 
  XLSExport is a Delphi components package  for quick data 
  export  into  MS Excel file with  one line  of code.  

http://sm-software.com


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