def set_cells_format(number_rows, worker): #Покраска зеленым print "Применение форматирования." worker.ReportProgress(94, u"Применение форматирования.") cell_properties = sdk.CellProperties() cell_properties.backgroundColor = sdk.ColorRGBA(146, 208, 80, 1) #cell_properties.verticalAlignment = sdk.VerticalAlignment_Center # Задаем диапозон B4:S - конечная строка # Применение форматирования B4:S - конечная строка worker.ReportProgress(95, u"Применение форматирования для диапозона B4:W"+ number_rows) cell_range = table_output_xlsx_11.getCellRange("B4:W" + number_rows) cell_range.setCellProperties(cell_properties) # Задаем вертикальное центрирование # для диапозона А4-А - конечная строка. worker.ReportProgress(96, u"Применение форматирования для диапозона А4:А" + number_rows) cell_properties_aligment = sdk.CellProperties() cell_properties_aligment.backgroundColor = sdk.ColorRGBA(0, 0, 0, 0) cell_properties_aligment.verticalAlignment = sdk.VerticalAlignment_Center cell_range_aligment = table_output_xlsx_11.getCellRange("A4:A" + number_rows) for c in cell_range_aligment: c.setCellProperties(cell_properties_aligment) #cell_range_aligment.setCellProperties(cell_properties_aligment) Баг-репорт # Формат Date для столбца E4 worker.ReportProgress(97, u"Формат Date для столбца E4") cell_range_date = table_output_xlsx_11.getCellRange("F4:F" + number_rows) for c in cell_range_date: c.setFormat(sdk.CellFormat_Date)
def error_data(data_error, worker): # Раскрашивает в выходном файле строки с ошибками worker.ReportProgress(98, u"Помечаем ошибки") for i in data_error: cell_properties = sdk.CellProperties() cell_properties.backgroundColor = sdk.ColorRGBA(255, 0, 0, 1) cell_properties.verticalAlignment = sdk.VerticalAlignment_Center cell_range = table_output_xlsx_11.getCellRange("B" + str(i+3)+":W"+str(i+3)) cell_range.setCellProperties(cell_properties)
# -*- coding: utf-8 -*- import os, time, itertools from datetime import datetime from MyOfficeSDKDocumentAPI import DocumentAPI as sdk from string import ascii_uppercase global application application = sdk.Application() cell_properties_win = sdk.CellProperties() cell_properties_win.backgroundColor = sdk.ColorRGBA(193, 242, 17, 255) cell_properties_lose = sdk.CellProperties() cell_properties_lose.backgroundColor = sdk.ColorRGBA(108, 122, 137, 255) def message(table_input, i, template, mydirs_): document = application.loadDocument(template) bookmarks = document.getBookmarks() last_name = table_input.getCell("B" + str(i)).getFormattedValue() first_name = table_input.getCell("C" + str(i)).getFormattedValue() bookmarks.getBookmarkRange('name').replaceText(last_name + ' ' + first_name) f_path = (mydirs_[17] + "\\" + '№' + str(i - 3) + ' ' + last_name + ' ' + first_name + ' ' + os.path.basename(template)).encode('utf-8') document.saveAs((f_path)) def iter_all_strings(): for size in itertools.count(1): for s in itertools.product(ascii_uppercase, repeat=size): yield "".join(s)
mydir8 = path_dirname_ + "\\" + u"Артек_Программа _Дверь синего цвета_ (жюри 1)_исправленный.xlsx" mydir9 = path_dirname_ + "\\" + u"Артек_Программа _Дверь синего цвета_ (жюри 2)_исправленный.xlsx" mydir10 = path_dirname_ + "\\" + u"Артек_Программа _Дверь синего цвета_ (жюри 3)_исправленный.xlsx" mydir11 = mydir + "\\" + os.path.basename(mydir7) mydir12_out = mydir + "\\" + u"Артек_Программа _Дверь синего цвета_ (жюри 1)_результаты.xlsx" mydir13_out = mydir + "\\" + u"Артек_Программа _Дверь синего цвета_ (жюри 2)_результаты.xlsx" mydir14_out = mydir + "\\" + u"Артек_Программа _Дверь синего цвета_ (жюри 3)_результаты.xlsx" mydirs_ = [ mydir0, mydir1, mydir2, mydir3, mydir4, mydir5, mydir6, mydir7, mydir8, mydir9, mydir10, mydir11, mydir12_out, mydir13_out, mydir14_out ] global application application = sdk.Application() cell_properties = sdk.CellProperties() cell_properties.backgroundColor = sdk.ColorRGBA(193, 242, 17, 255) def iter_all_strings(): for size in itertools.count(1): for s in itertools.product(ascii_uppercase, repeat=size): yield "".join(s) def list_xls(rang): lst_addr = [] for s in iter_all_strings(): lst_addr.append(s) if s == rang: break