Я хочу рисовать диагональные линии в ячейках Excel с модулем openpyxl в Python - PullRequest
0 голосов
/ 23 января 2019

Когда я выполняю мой источник, сверху, снизу, слева и справа применяются border_style, а остальные нет.(Я хотел прикрепить его как изображение, но пока не могу заполнить 10 репутаций и прикрепить его как ссылку.)

"когда я запускаю источник"

и это результат, который я хочу

«Я ожидаю»

Я также пытаюсь использовать diagonalUp=True, diagonalDown=True, но это не сработало, я незнаю, какие параметры мне нужно настроить.

from openpyxl.styles import Border, Side
import openpyxl

wb = openpyxl.Workbook()
ws = wb.active

ws['B2'] = "test"
ca2 = ws['B2']

box = Border(left=Side(border_style="thin",color='FF000000'),
                 right=Side(border_style=None,color='FF000000'),
                 top=Side(border_style="double",color='FF000000'),
                 bottom=Side(border_style=None,color='FF000000'),
                 diagonal=Side(border_style="thin",color='FF000000'),
                 diagonal_direction=0,
                 outline=Side(border_style="double",color='FF000000'),
                 vertical=Side(border_style="double",color='FF000000'),
                 horizontal=Side(border_style="double",color='FF000000')
                )
ca2.border = box

wb.save("test.xlsx")

Основная проблема заключается в том, что я хочу знать, почему диагональ не работает.Если вы можете себе это позволить, я хотел бы знать, почему контур, вертикаль и горизонталь не работают.Возможно, мое использование неверно, и я думаю, что эти вещи не работают.

1 Ответ

0 голосов
/ 23 января 2019

Похоже, вам нужно явно установить направление диагонали.Для верхнего левого угла на нижний правый используйте box.diagonalDown=True, а для нижнего левого на верхний правый используйте box.diagonalUp=True.

...