diff --git a/excel_writer.py b/excel_writer.py index 5fa9d62..c8bf609 100644 --- a/excel_writer.py +++ b/excel_writer.py @@ -364,6 +364,11 @@ def write_vehicle_tracking_sheet(wb, settle_month, G, master_vehicles, vehicle_p WH(ws, headers) ws.freeze_panes = 'H2' # 冻结车辆信息+业务员列 + # 交替行底色 + stripe_a = PatternFill(start_color='FFFFFF', end_color='FFFFFF', fill_type='solid') # 白 + stripe_b = PatternFill(start_color='F5F5F5', end_color='F5F5F5', fill_type='solid') # 浅灰 + vehicle_idx = 0 + rn = 2 for mv in master_vehicles: plate = mv['车牌号'] @@ -389,6 +394,7 @@ def write_vehicle_tracking_sheet(wb, settle_month, G, master_vehicles, vehicle_p if not persons: persons = [''] # 无考核记录也占一行 + row_stripe = stripe_b if vehicle_idx % 2 == 1 else stripe_a start_rn = rn for pi, person in enumerate(persons): sd = person_set.get(person,'').replace('业务','') if person else '' @@ -456,10 +462,13 @@ def write_vehicle_tracking_sheet(wb, settle_month, G, master_vehicles, vehicle_p WR(ws, rn, row) - # 美化 - # 车辆信息列灰底 + # 美化:先刷底色(交替色),再叠加特殊色 + for ci in range(1, len(headers) + 1): + ws.cell(row=rn, column=ci).fill = row_stripe + + # 车辆信息列灰底(覆盖条纹) for ci in range(1, info_cols + 1): - ws.cell(row=rn, column=ci).fill = grey_fill + ws.cell(row=rn, column=ci).fill = grey_fill if vehicle_idx % 2 == 0 else PatternFill(start_color='E8E8E8', end_color='E8E8E8', fill_type='solid') # 月度达标列着色 for m in range(1, settle_month + 1): @@ -507,6 +516,8 @@ def write_vehicle_tracking_sheet(wb, settle_month, G, master_vehicles, vehicle_p ws.merge_cells(start_row=start_rn, start_column=pool_col, end_row=start_rn + len(persons) - 1, end_column=pool_col) + vehicle_idx += 1 + # 列宽 # 隐藏BCD列(车架号/归属公司/车型) for cl in ['B','C','D']: