0
이 코드가 있는데 제대로 작동합니다. 하지만 문제는 내가 엘프 (Elif)를 많이 만들어야한다는 것입니다. 나는 그것을 더 우아하게 만들어야한다.Excel의 특정 셀에 색상을 채우려면 어떻게해야합니까?
wb = openpyxl.load_workbook('/New.xlsx')
ws = wb.active
ws = wb.get_sheet_by_name(u'И')
redFill = PatternFill(start_color='FFFF00',end_color='FFFF00',fill_type='solid')#желтый
redFill2 = PatternFill(start_color='FF4500',end_color='FF4500',fill_type='solid')#красный
redFill3 = PatternFill(start_color='FFA500',end_color='FFA500',fill_type='solid')#оранжевый
redFill4 = PatternFill(start_color='228B22',end_color='228B22',fill_type='solid')#зеленый
if ws.cell(row=2, column=4).value=='50,00%':
ws['E2'].fill = redFill2
elif ws.cell(row=2, column=4).value=='75,00%':
ws['E2'].fill = redFill3
elif ws.cell(row=2, column=4).value=='100,00%':
ws['E2'].fill = redFill4
wb.save('/New.xlsx')
나는 이런 식으로 뭔가 만들려면 :
def ws_f(row,column):
if ws.cell(row=row, column=column).value=='50,0%':
return ws.cell.fill = redFill2
elif ws.cell(row=row, column=column).value=='75,0%':
return ws.cell.fill=redFill3
elif ws.cell(row=row, column=column).value=='100,0%':
return ws.cell.fill=redFill4
ws_f(3,5)
을하지만 그것은 def ws_f
방식으로 작동하지 않습니다. 어떤 제안?
def ws_f 방법을 시도했을 때 어떤 오류가 있었습니까? 어떻게 함수를 호출 했습니까? – QHarr