Как создать Excel xlsx файлы из сценария?

Я ищу пакеты, доступные в Ubuntu основные репозитории / репозитории вселенной, которые в состоянии создать Excel 2007 + xlsx файлы из сценария (Python или жемчуг)

Мои требования:

  • 100%-е совместимые файлы Excel XLSX.
  • Основательная и подробная документация и большое разнообразие примеров/учебных руководств
  • Стабильный API
  • Запишите текст, числа, формулы и гиперссылки
  • Несколько рабочих листов
  • Полное форматирование
  • Объединенные ячейки
  • Чарты
  • Автофильтры
  • Рабочий лист PNG/изображения JPEG
  • Комментарии ячейки
  • Группа и основы
7
задан 1 May 2015 в 05:21

1 ответ

Я настоятельно рекомендую модули John McNamara. Он загрузил новый модуль Python под названием XlsxWriter для создания файлов XLSX к PyPi, который я упаковал для Debian и Ubuntu.

Это - порт модуля Perl, который он записал, назвал Excel:: Устройство записи:: XLSX, который является расширением другого модуля Perl, названного электронной таблицей:: WriteExcel.

python3-xlsxwriter (python-xlsxwriter для Python 2.x)

XlsxWriter является модулем Python для записи файлов в Excel 2007 + формат файла XLSX.

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

XlsxWriter имеет некоторые преимущества перед альтернативными модулями Python для записи файлов Excel:

  • Это поддерживает больше функций Excel, чем любой из альтернативных модулей.
  • Это имеет высокую степень точности с файлами, произведенными Excel. В большинстве случаев произведенные файлы являются 100%-м эквивалентом файлам, произведенным Excel.
  • Это имеет обширную документацию, файлы в качестве примера и тесты.
  • Это быстро и может быть настроено для использования очень небольшой памяти даже для файлов очень крупносерийного производства.
  • Интеграция с пандами (библиотека анализа данных Python).

Простой пример некоторых функций модуля XlsxWriter Python:

#Copyright 2013-2014, John McNamara, jmcnamara@cpan.org
import xlsxwriter

# Create an new Excel file and add a worksheet.
workbook = xlsxwriter.Workbook('demo.xlsx')
worksheet = workbook.add_worksheet()

# Widen the first column to make the text clearer.
worksheet.set_column('A:A', 20)

# Add a bold format to use to highlight cells.
bold = workbook.add_format({'bold': True})

# Write some simple text.
worksheet.write('A1', 'Hello')

# Text with formatting.
worksheet.write('A2', 'World', bold)

# Write some numbers, with row/column notation.
worksheet.write(2, 0, 123)
worksheet.write(3, 0, 123.456)

# Insert an image.
worksheet.insert_image('B5', 'logo.png')

workbook.close()

enter image description here

Посетите эту страницу для полного списка примеров XlsxWriter.

libexcel-writer-xlsx-perl

Excel:: Устройство записи:: модуль XLSX может использоваться для создания файла Excel в 2007 + формат XLSX.

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

Excel:: Устройство записи:: XLSX использует тот же интерфейс в качестве электронной таблицы:: модуль WriteExcel, который производит файл Excel в двоичном формате XLS.

Excel:: Устройство записи:: XLSX поддерживает все функции электронной таблицы:: WriteExcel и в некоторых случаях имеет больше функциональности. Для получения дополнительной информации посмотрите Совместимость с электронной таблицей:: WriteExcel.

Основное преимущество формата XLSX по формату XLS состоит в том, что он позволяет большее число строк и столбцов в рабочем листе.

Формат файла XLSX также производит намного меньшие файлы, чем формат файла XLS.

Записать строку, отформатированную строку, число и формулу к первому рабочему листу в названной рабочей книге Excel perl.xlsx:

# reverse ('(c)'), March 2001, John McNamara, jmcnamara@cpan.org
use Excel::Writer::XLSX;

# Create a new Excel workbook
my $workbook = Excel::Writer::XLSX->new( 'perl.xlsx' );

# Add a worksheet
$worksheet = $workbook->add_worksheet();

#  Add and define a format
$format = $workbook->add_format();
$format->set_bold();
$format->set_color( 'red' );
$format->set_align( 'center' );

# Write a formatted and unformatted string, row and column notation.
$col = $row = 0;
$worksheet->write( $row, $col, 'Hi Excel!', $format );
$worksheet->write( 1, $col, 'Hi Excel!' );

# Write a number and a formula using A1 notation
$worksheet->write( 'A3', 1.2345 );
$worksheet->write( 'A4', '=SIN(PI()/4)' );

Посетите эту страницу для полного списка Excel:: Устройство записи:: примеры XLSX.

13
ответ дан 23 November 2019 в 06:19

Другие вопросы по тегам:

Похожие вопросы: