Как вставлять и форматировать значения по ячейкам в файле XLSX, используя openpyxl

1

Я пытаюсь написать файл XLSX с помощью модуля openpyxl. Я использую метод append() для вставки значений по строкам. Но вместо этого я хочу вставить значения cell за ячейкой. Я также хотел бы форматировать ячейку (шрифт, цвет, выравнивание и т.д.). Пожалуйста, помогите мне.

  • 4
    Пожалуйста, объясните, что вам нужно сделать, шаг за шагом. Также покажите, какой код вы написали до сих пор.
  • 0
    Ответ на этот вопрос [ stackoverflow.com/questions/8440284/setting-styles-in-openpyxl] содержит все необходимое для форматирования ячеек.
Теги:
excel
xlsx
openpyxl

1 ответ

5

Вы можете установить всю эту ячейку по ячейке (если это то, что вам нужно) с помощью openpyxl. Вот небольшой пример, который задает значение, имя (named_range) и некоторый стиль ячеек в книге:

from openpyxl.workbook import Workbook
wb = Workbook()
dest_filename = r'empty_book.xlsx'
ws = wb.worksheets[0]    

name = 'name'

for col_idx in xrange(1, 101):
    col = get_column_letter(col_idx)
    for row in xrange(1, 1001):
        ws.cell('%s%s'%(col, row)).value = '%s%s' % (col, row)
        ws.cell('%s%s'%(col, row)).style.fill.fill_type = 'solid'
        ws.cell('%s%s'%(col, row)).style.fill.start_color.index = openpyxl.style.Color.DARKYELLOW
        wb.create_named_range(name+str(i), ws, '%s%s'%(col, row))

wb.save(filename = dest_filename)

Посмотрите класс Style в документации openpyxl, чтобы узнать больше о том, как установить отдельные формы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню