Извлечь из Excel ... в Mac
Привет я хотел бы иметь возможность извлечь данные из файла Excel. В отличие от "экспорта", извлечение каким-то образом откроет файл Excel, прочитает все ячейки в определенном диапазоне строк-столбцов и запишет содержимое этих ячеек в файл.txt. Содержимое диапазона является либо числовым, либо текстовым, поэтому нет проблем с преобразованием.
Я бы предпочел сделать это без необходимости заходить в Excel и использовать save-as или copy-paste.
Моя среда - OS X Yosemite, и я счастлив попробовать Python или bash, чтобы сделать это. В настоящее время для этого используется Excel 2011, хотя доступны более поздние версии Office для Mac.
Спасибо!
1 ответ
openpyxl - это библиотека Python для чтения и управления .xlsx
файлы. Пример использования приведен на странице документации:
>>> from openpyxl import load_workbook
>>> wb = load_workbook(filename = 'empty_book.xlsx')
>>> sheet_ranges = wb['range names']
>>> print(sheet_ranges['D18'].value)
3
пример
from openpyxl import load_workbook
wb = load_workbook(filename = 'sample.xlsx')
ws = wb['Sheet1']
with open('sample.txt', 'w') as f:
myrange = ws['A1':'C4']
for c1, c2, c3 in myrange:
print(c1.value, c2.value, c3.value, file=f)
Этот лист с именем Sheet1
создает текстовый файл с таким выводом:
1 5 Nine
Two Six 1923-01-07 00:00:00
3 7 Tiger
40 8 Lion