3333logger = logging .getLogger (constant .LOGGER_NAME )
3434
3535
36- def write_excel_and_csv (filename_without_extension , sheet_list , ignore_os = False , extended_header = {}):
36+ def write_excel_and_csv (filename_without_extension , sheet_list , ignore_os = False , extended_header = {}, hide_header = {} ):
3737 success = True
3838 error_msg = ""
3939 success_csv = True
@@ -47,7 +47,10 @@ def write_excel_and_csv(filename_without_extension, sheet_list, ignore_os=False,
4747 output_dir = os .path .dirname (filename_without_extension )
4848 Path (output_dir ).mkdir (parents = True , exist_ok = True )
4949
50- success , error_msg = write_result_to_excel (f"{ filename_without_extension } .xlsx" , sheet_list , extended_header )
50+ success , error_msg = write_result_to_excel (f"{ filename_without_extension } .xlsx" ,
51+ sheet_list ,
52+ extended_header ,
53+ hide_header )
5154
5255 if ignore_os or platform .system () != "Windows" :
5356 success_csv , error_msg_csv , output_csv = write_result_to_csv (f"{ filename_without_extension } .csv" ,
@@ -163,7 +166,7 @@ def write_result_to_csv(output_file, sheet_list_origin, separate_sheet=False, ex
163166 return success , error_msg , output
164167
165168
166- def write_result_to_excel (out_file_name , sheet_list , extended_header = {}):
169+ def write_result_to_excel (out_file_name , sheet_list , extended_header = {}, hide_header = {} ):
167170 success = True
168171 error_msg = ""
169172
@@ -182,6 +185,9 @@ def write_result_to_excel(out_file_name, sheet_list, extended_header={}):
182185 pass
183186 worksheet = create_worksheet (workbook , sheet_name , selected_header )
184187 write_result_to_sheet (worksheet , sheet_content_without_header )
188+
189+ if hide_header :
190+ hide_column (worksheet , selected_header , hide_header )
185191 workbook .close ()
186192 except Exception as ex :
187193 error_msg = str (ex )
@@ -198,6 +204,13 @@ def write_result_to_sheet(worksheet, sheet_contents):
198204 row += 1
199205
200206
207+ def hide_column (worksheet , selected_header , hide_header ):
208+ for col_idx , sel_hd in enumerate (selected_header ):
209+ for hide_hd in hide_header :
210+ if sel_hd == hide_hd :
211+ worksheet .set_column (col_idx , col_idx , None , None , {"hidden" : True })
212+
213+
201214def create_worksheet (workbook , sheet_name , header_row ):
202215 if len (sheet_name ) > 31 :
203216 current_time = str (time .time ())
0 commit comments