diff --git a/脚本/开票.py b/脚本/开票.py index 6b137b0..b7ac9e2 100644 --- a/脚本/开票.py +++ b/脚本/开票.py @@ -1,31 +1,36 @@ from openpyxl import load_workbook +from openpyxl.styles.fills import PatternFill EXCEL_PATH = r'd:\Cheney\geely-kaipiao\doc\2025-2026团队结算进度.xlsx' def read_team_column() -> list: - wb = load_workbook(EXCEL_PATH) - ws = wb.active - team_list = [] - - header_row = 1 - team_col_index = None - - for col in range(1, ws.max_column + 1): - cell_value = ws.cell(row=header_row, column=col).value - if cell_value == '团号': - team_col_index = col - break - - if team_col_index is None: + try: + wb = load_workbook(EXCEL_PATH, read_only=True) + ws = wb.active + team_list = [] + + header_row = 1 + team_col_index = None + + for col in range(1, ws.max_column + 1): + cell_value = ws.cell(row=header_row, column=col).value + if cell_value == '团号': + team_col_index = col + break + + if team_col_index is None: + return team_list + + for row in range(2, ws.max_row + 1): + cell_value = ws.cell(row=row, column=team_col_index).value + if cell_value and isinstance(cell_value, str) and cell_value.lower().startswith('team'): + team_list.append(cell_value) + return team_list - - for row in range(2, ws.max_row + 1): - cell_value = ws.cell(row=row, column=team_col_index).value - if cell_value and isinstance(cell_value, str) and cell_value.lower().startswith('team'): - team_list.append(cell_value) - - return team_list + except Exception as e: + print(f"读取Excel时出错: {e}") + return [] if __name__ == '__main__':