Вы можете установить всю эту ячейку за ячейкой (если это то, что вам нужно), используя 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, чтобы узнать больше о том, как установить отдельные форматирования.