From 85121135a8a8dcbec4d5c7290c3e6de0ca204e35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E5=B8=88?= Date: Tue, 9 Jun 2026 04:54:28 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=85=AC=E5=BC=8F-=E9=A2=84=E8=AD=A6?= =?UTF-8?q?=E6=98=8E=E7=BB=86=20#SPILL!=20=E2=80=94=20=E7=A7=BB=E9=99=A4?= =?UTF-8?q?=E5=90=88=E5=B9=B6=E5=8D=95=E5=85=83=E6=A0=BC=EF=BC=8C=E9=81=BF?= =?UTF-8?q?=E5=85=8DFILTER=2030=E5=88=97=E6=A8=AA=E5=90=91=E6=BA=A2?= =?UTF-8?q?=E5=87=BA=E8=A2=AB=E9=98=BB=E6=8C=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gen_workbook.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/gen_workbook.py b/src/gen_workbook.py index 6da23a7..6293b38 100644 --- a/src/gen_workbook.py +++ b/src/gen_workbook.py @@ -192,13 +192,18 @@ for ri,(lab,fm,note) in enumerate(rows8): s8.cell(r,3,note).font=GRAY_F; s8.cell(r,3).border=BORDER for w,c in zip([18,10,35],'ABC'): s8.column_dimensions[c].width=w -# ── S9: 公式-预警明细 ── FILTER 动态筛选 +# ── S9: 公式-预警明细 ── FILTER 动态筛选(无合并单元格 ≠ #SPILL!) s9=wb.create_sheet('公式-预警明细') -s9.merge_cells('A1:C1'); s9.cell(1,1,'OA预警明细(FILTER动态筛选)').font=TITLE_F; s9.cell(1,1).border=GOLD_BD -s9.merge_cells('A2:C2'); s9.cell(2,1,'FILTER(有效≥2026!A3:AD200,有效≥2026!AD3:AD200<>"none","无预警")').font=GRAY_F +s9.cell(1,1,'OA预警明细(FILTER动态筛选·无合并单元格)').font=TITLE_F; s9.cell(1,1).border=GOLD_BD +s9.cell(2,1,'FILTER(有效≥2026!A3:AD200,有效≥2026!AD3:AD200<>"none","无预警")').font=GRAY_F s9.cell(4,1,f'=FILTER({REF}!A3:AD200,{REF}!AD3:AD200<>"none","🎉 无预警项")').font=FORMULA_F; s9.cell(4,1).border=BORDER -for w,c in zip([22],'A'): s9.column_dimensions[c].width=w -s9.merge_cells('A10:C10'); s9.cell(10,1,'💡 若WPS显示@前缀,选中单元格→删除@即可正常溢出').font=GRAY_F; s9.cell(10,1).fill=INFO_BG +# 给A~AD列设最小宽度,确保溢出结果可见(无合并单元格阻挡) +for i in range(1,31): + s9.column_dimensions[get_column_letter(i)].width = 4 if i>1 else 6 +s9.column_dimensions['C'].width=22; s9.column_dimensions['D'].width=40 +s9.column_dimensions['E'].width=35; s9.column_dimensions['K'].width=12 +s9.column_dimensions['AD'].width=10 +s9.cell(10,1,'💡 若WPS显示@前缀,选中单元格→删除@即可正常溢出;若仍#SPILL!→用静态表S14').font=GRAY_F; s9.cell(10,1).fill=INFO_BG # ── S10: 公式-认定分类 ── s10=wb.create_sheet('公式-认定分类')