Раньше я специально не делал это с помощью python, но я предполагаю, что вы используете интерфейс автоматизации COM, чтобы преуспеть.
На этой странице есть пример, который кажетсяПокройте как выравнивание, так и заполнение ячеек цветом в C #, так что его будет довольно легко адаптировать к Python.Предполагая, что у вас есть объект Worksheet с именем sheet, а объект автоматизации Excel называется Excel, я предполагаю, что он может выглядеть примерно так:
//Format A1:D1 as center alignment,
sheet.Range("A1", "D1").VerticalAlignment = Excel.XlVAlign.xlVAlignCenter
sheet.Range("A1", "D1").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter
sheet.Range("A1", "D1").Interior.ColorIndex = Excel.XlColorIndex.Red
Если у вас нет доступа к Excel.Константы XlAlign и XlColorIndex из python, тогда вы можете просто заменить их конкретными целыми числами, которые они представляют, хотя я не совсем уверен, откуда вы могли бы их получить.Вероятно, с Справочного сайта VBA или аналогичного.(Хотя эта ссылка, которую я предоставил, кажется, не позволяет вам расширить каждую запись в списке, поэтому вам, возможно, придется поискать в другом месте)
РЕДАКТИРОВАТЬ: только что поиграл с автоматизацией Excel через Pythonконсоль, и, кажется, работает нормально:
>>> from win32com.client import Dispatch
>>> xlApp = Dispatch("Excel.Application")
>>> xlWb = xlApp.Workbooks.Add()
>>> xlSht = xlWb.WorkSheets(1)
>>> xlSht.Range("A1", "D1").VerticalAlignment = 1
>>> xlSht.Range("A1", "D1").Interior.ColorIndex = 6
>>> # The background color of A1-D1 should now be yellow
>>> xlSht.Cells(1, 1).VerticalAlignment = 1
Если вы не можете найти какую-либо хорошую ссылку на то, что различные константы выравнивания / цвета, то я просто поигрался бы с python на консоли, какзатем откройте полученный лист в Excel и посмотрите на результаты, чтобы разобраться.
Официальный справочник по API автоматизации Office 2003 здесь В частности, вы 'Возможно, вы найдете документацию по диапазону 1020 * наиболее полезную.