У меня есть фрагмент кода, который действительно работает для форматирования границ в excel с использованием python win32com. Моя забота - время, необходимое для форматирования границ. Я попытался записать макрос в excel, чтобы узнать необходимую информацию, чтобы транспонировать его в моем скрипте, но он не работал.python win32com excel border format
Так что лучше всего я могу запустить в цикле диапазона, где я всегда начинаю с строки 3 до счетчика строк, называемого shn [1], с шагом 1 и от столбца 1 до 10 с шагом 1 Оттуда я использую «BorderAround()», которые работают нормально, но слишком медленно. Вот мой кусок кода:
for shn in [("Beam-Beam", bb_row, bb_col), ("Beam-Col", bc_row, bc_col)]:
sheet = book.Worksheets(shn[0])
sheet.Range("J3:DW3").Copy()
if shn[0] == "Beam-Col":
sheet.Range("J3:AA3").Copy()
sheet.Range(sheet.Cells(4, 10), sheet.Cells(shn[1]-1, 10) ).PasteSpecial()
for mrow in xrange(3,shn[1],1):
for mcol in xrange(1,10,1):
sheet.Cells(mrow, mcol).BorderAround()#.Border(1)
Есть ли что-то я могу сделать, чтобы форматировать границы с диапазоном, как ==> sheet.Range (sheet.Cells (3,1), sheet.Cells (SHN [1 ], 10))? Я попробовал «.Borders (11)» и «.Borders (12)« plus ».BorderAround()», но только «.BorderAround()» сработали.
Заранее спасибо.