Hướng dẫn how do i format a cell in excel using openpyxl? - làm cách nào để định dạng một ô trong excel bằng openpyxl?
Các kiểu được sử dụng để thay đổi giao diện của dữ liệu của bạn trong khi được hiển thị trên màn hình. Chúng cũng được sử dụng để xác định định dạng cho các số. Kiểu có thể được áp dụng cho các khía cạnh sau: Sau đây là các giá trị mặc định >>> from openpyxl.styles import PatternFill, Border, Side, Alignment, Protection, Font >>> font = Font(name='Calibri', ... size=11, ... bold=False, ... italic=False, ... vertAlign=None, ... underline='none', ... strike=False, ... color='FF000000') >>> fill = PatternFill(fill_type=None, ... start_color='FFFFFFFF', ... end_color='FF000000') >>> border = Border(left=Side(border_style=None, ... color='FF000000'), ... right=Side(border_style=None, ... color='FF000000'), ... top=Side(border_style=None, ... color='FF000000'), ... bottom=Side(border_style=None, ... color='FF000000'), ... diagonal=Side(border_style=None, ... color='FF000000'), ... diagonal_direction=0, ... outline=Side(border_style=None, ... color='FF000000'), ... vertical=Side(border_style=None, ... color='FF000000'), ... horizontal=Side(border_style=None, ... color='FF000000') ... ) >>> alignment=Alignment(horizontal='general', ... vertical='bottom', ... text_rotation=0, ... wrap_text=False, ... shrink_to_fit=False, ... indent=0) >>> number_format = 'General' >>> protection = Protection(locked=True, ... hidden=False) >>> Kiểu di động và Styles được đặt tênCó hai loại kiểu: kiểu ô và kiểu được đặt tên, còn được gọi là mẫu phong cách. Phong cách di độngCác kiểu ô được chia sẻ giữa các đối tượng và một khi chúng được chỉ định, chúng không thể thay đổi. Điều này dừng các tác dụng phụ không mong muốn như thay đổi phong cách cho nhiều ô khi chỉ có một thay đổi. >>> from openpyxl.styles import colors >>> from openpyxl.styles import Font, Color >>> from openpyxl import Workbook >>> wb = Workbook() >>> ws = wb.active >>> >>> a1 = ws['A1'] >>> d4 = ws['D4'] >>> ft = Font(color="FF0000") >>> a1.font = ft >>> d4.font = ft >>> >>> a1.font.italic = True # is not allowed # doctest: +SKIP >>> >>> # If you want to change the color of a Font, you need to reassign it:: >>> >>> a1.font = Font(color="FF0000", italic=True) # the change only affects A1 Sao chép Styles¶Phong cách cũng có thể được sao chép >>> from openpyxl.styles import Font >>> from copy import copy >>> >>> ft1 = Font(name='Arial', size=14) >>> ft2 = copy(ft1) >>> ft2.name = "Tahoma" >>> ft1.name 'Arial' >>> ft2.name 'Tahoma' >>> ft2.size # copied from the 14.0 Màu sắc¶Màu sắc cho phông chữ, hình nền, đường viền, vv có thể được đặt theo ba cách: lập chỉ mục, argb hoặc chủ đề. Màu sắc được lập chỉ mục là việc triển khai kế thừa và bản thân các màu phụ thuộc vào chỉ mục được cung cấp với sổ làm việc hoặc với mặc định ứng dụng. Màu sắc chủ đề rất hữu ích cho các sắc thái bổ sung của màu sắc nhưng cũng phụ thuộc vào chủ đề có mặt trong sổ làm việc. Do đó, nó được khuyến khích sử dụng màu Argb. Argb Colours¶Màu RGB được đặt bằng cách sử dụng các giá trị thập lục phân cho màu đỏ, xanh lá cây và xanh dương. >>> from openpyxl.styles import Font >>> font = Font(color="FF0000") Giá trị alpha đề cập đến lý thuyết về độ trong suốt của màu nhưng điều này không liên quan đến các kiểu ô. Mặc định 00 sẽ được chuẩn bị cho bất kỳ giá trị RGB đơn giản nào: >>> from openpyxl.styles import Font >>> font = Font(color="00FF00") >>> font.color.rgb '0000FF00' Ngoài ra còn có sự hỗ trợ cho các màu sắc được lập chỉ mục kế thừa cũng như các chủ đề và sắc thái. >>> from openpyxl.styles.colors import Color >>> c = Color(indexed=32) >>> c = Color(theme=6, tint=0.5) Màu sắc được lập chỉ mụcMàu sắc tiêu chuẩn
003366ff 0033CCCC50-54 >>> from openpyxl.workbook import Workbook >>> from openpyxl.styles import Font, Fill >>> wb = Workbook() >>> ws = wb.active >>> c = ws['A1'] >>> c.font = Font(size=12) 0099CC00 >>> col = ws.column_dimensions['A'] >>> col.font = Font(bold=True) >>> row = ws.row_dimensions[1] >>> row.font = Font(underline="single") 00FFCC0000FF9900 >>> from openpyxl.styles import Border, Side, PatternFill, Font, GradientFill, Alignment >>> from openpyxl import Workbook >>> >>> wb = Workbook() >>> ws = wb.active >>> ws.merge_cells('B2:F4') >>> >>> top_left_cell = ws['B2'] >>> top_left_cell.value = "My Cell" >>> >>> thin = Side(border_style="thin", color="000000") >>> double = Side(border_style="double", color="ff0000") >>> >>> top_left_cell.border = Border(top=double, left=thin, right=thin, bottom=double) >>> top_left_cell.fill = PatternFill("solid", fgColor="DDDDDD") >>> top_left_cell.fill = fill = GradientFill(stop=("000000", "FFFFFF")) >>> top_left_cell.font = Font(b=True, color="FF0000") >>> top_left_cell.alignment = Alignment(horizontal="center", vertical="center") >>> >>> wb.save("styled.xlsx") 00FF6600>>> from openpyxl.workbook import Workbook >>> >>> wb = Workbook() >>> ws = wb.active >>> >>> ws.page_setup.orientation = ws.ORIENTATION_LANDSCAPE >>> ws.page_setup.paperSize = ws.PAPERSIZE_TABLOID >>> ws.page_setup.fitToHeight = 0 >>> ws.page_setup.fitToWidth = 1 55-6060-63not affect the cell. Các chỉ số 64 và 65 không thể được đặt và được dành riêng cho các màu tiền cảnh và màu nền tương ứng. Áp dụng Styles¶>>> from openpyxl.styles import colors >>> from openpyxl.styles import Font, Color >>> from openpyxl import Workbook >>> wb = Workbook() >>> ws = wb.active >>> >>> a1 = ws['A1'] >>> d4 = ws['D4'] >>> ft = Font(color="FF0000") >>> a1.font = ft >>> d4.font = ft >>> >>> a1.font.italic = True # is not allowed # doctest: +SKIP >>> >>> # If you want to change the color of a Font, you need to reassign it:: >>> >>> a1.font = Font(color="FF0000", italic=True) # the change only affects A10 Phong cách được áp dụng trực tiếp cho các ô >>> from openpyxl.styles import colors >>> from openpyxl.styles import Font, Color >>> from openpyxl import Workbook >>> wb = Workbook() >>> ws = wb.active >>> >>> a1 = ws['A1'] >>> d4 = ws['D4'] >>> ft = Font(color="FF0000") >>> a1.font = ft >>> d4.font = ft >>> >>> a1.font.italic = True # is not allowed # doctest: +SKIP >>> >>> # If you want to change the color of a Font, you need to reassign it:: >>> >>> a1.font = Font(color="FF0000", italic=True) # the change only affects A11 Các kiểu cũng có thể được áp dụng cho các cột và hàng nhưng lưu ý rằng điều này chỉ áp dụng cho các ô được tạo (trong excel) sau khi tệp được đóng. Nếu bạn muốn áp dụng các kiểu cho toàn bộ hàng và cột thì bạn phải tự mình áp dụng kiểu cho mỗi ô. Đây là một hạn chế của định dạng tệp: >>> from openpyxl.styles import colors >>> from openpyxl.styles import Font, Color >>> from openpyxl import Workbook >>> wb = Workbook() >>> ws = wb.active >>> >>> a1 = ws['A1'] >>> d4 = ws['D4'] >>> ft = Font(color="FF0000") >>> a1.font = ft >>> d4.font = ft >>> >>> a1.font.italic = True # is not allowed # doctest: +SKIP >>> >>> # If you want to change the color of a Font, you need to reassign it:: >>> >>> a1.font = Font(color="FF0000", italic=True) # the change only affects A12 Kiểu dáng hợp nhất các tế bào >>> from openpyxl.styles import colors >>> from openpyxl.styles import Font, Color >>> from openpyxl import Workbook >>> wb = Workbook() >>> ws = wb.active >>> >>> a1 = ws['A1'] >>> d4 = ws['D4'] >>> ft = Font(color="FF0000") >>> a1.font = ft >>> d4.font = ft >>> >>> a1.font.italic = True # is not allowed # doctest: +SKIP >>> >>> # If you want to change the color of a Font, you need to reassign it:: >>> >>> a1.font = Font(color="FF0000", italic=True) # the change only affects A13 Các tế bào được hợp nhất hoạt động tương tự như các oject tế bào khác. Giá trị và định dạng của nó được xác định trong ô trên cùng bên trái của nó. Để thay đổi đường viền của toàn bộ ô hợp nhất, thay đổi đường viền của ô trên cùng bên trái của nó. Các định dạng được tạo ra cho mục đích viết.Chỉnh sửa thiết lập trang
Trái ngược với các kiểu ô, các kiểu được đặt tên là có thể thay đổi. Chúng có ý nghĩa khi bạn muốn áp dụng định dạng cho nhiều ô khác nhau cùng một lúc. NB. Khi bạn đã gán một kiểu được đặt tên cho một ô, các thay đổi bổ sung cho kiểu dáng sẽ không ảnh hưởng đến ô.
Sử dụng Stickin Styles¶
'Tiền tệ'
Phong văn văn bản
Theo dõi siêu liên kết
Để biết thêm thông tin về các kiểu xây dựng, vui lòng tham khảo >>> from openpyxl.styles import colors >>> from openpyxl.styles import Font, Color >>> from openpyxl import Workbook >>> wb = Workbook() >>> ws = wb.active >>> >>> a1 = ws['A1'] >>> d4 = ws['D4'] >>> ft = Font(color="FF0000") >>> a1.font = ft >>> d4.font = ft >>> >>> a1.font.italic = True # is not allowed # doctest: +SKIP >>> >>> # If you want to change the color of a Font, you need to reassign it:: >>> >>> a1.font = Font(color="FF0000", italic=True) # the change only affects A14 Làm cách nào để tạo kiểu cho một ô trong openpyxl?Để thay đổi thuộc tính kiểu của ô, trước tiên bạn phải sao chép đối tượng kiểu hiện có từ ô và thay đổi giá trị của thuộc tính hoặc bạn phải tạo một đối tượng kiểu mới với các cài đặt mong muốn. Sau đó, hãy gán đối tượng kiểu mớiđến tế bào.Lưu câu trả lời này.copy the existing style object from the cell and change the value of the property or you have to create a new style object with the desired settings. Then, assign the new style object to the cell. Save this answer.
Làm cách nào để thay đổi màu của một ô trong excel bằng openpyxl?OpenPyXL cung cấp cho bạn một lớp được gọi là mematurefill mà bạn có thể sử dụng để thay đổi màu nền của ô ... patternType=None.. fgColor=Color(). bgColor=Color(). fill_type=None.. start_color=None.. end_color=None.. Làm cách nào để tô màu một ô trong Excel bằng Python?Làm thế nào để thêm màu sắc cho các tế bào Excel bằng Python.. Example:. Bước 1: Nhập thư viện và mô -đun OpenPyXL vào chương trình Python để thêm màu vào ô..... Lưu ý: OpenPyxl..... Bước2: Kết nối/Liên kết tệp sổ làm việc Excel của bạn và bảng làm việc của sổ làm việc tương ứng với chương trình Python .. |