我正在尝试对 Excel 文件中的数据进行取消分组。
我不知道已分组的行号。
当我单击文件顶部的 2 时,数据会取消分组。
有没有办法使用 python 来完成它。
我有一组 400-500 个文件,其中的数据必须取消分组
我尝试使用 win32com 库
xl = win32com.client.Dispatch("Excel.Application")
# password, act accordingly
#xl.Visible = True # Optional: Hide Excel application window
wb = xl.Workbooks.Open(excel_file)
try:
for sheet in wb.Worksheets:
sheet_name = sheet.Name
sheet.PageSetup.Zoom = False # Disable zoom
# visible_range = sheet.UsedRange.Visible
# sheet.Find(What="*", ReplaceWith="", SearchOrder=xlPrevious, SearchDirection=xlEntireRow, MatchCase=False).Select()
# sheet.Selection.Visible = visible_range # Restore original visibility
# cells = sheet.getCells()
# cells.ungroupRows(17,26)
# Ungroup rows (if grouped)
for outline in sheet.Outline:
if outline.Type == 2: # Check if it's an outline group
outline.Ungroup()
如果您只想清除工作表上的所有分组,请选择范围并清除。
import win32com.client
xl = win32com.client.Dispatch("Excel.Application")
# password, act accordingly
excel_file =r'<file path>/excelfile.xlsx'
# xl.Visible = True # Optional: Hide Excel application window
wb = xl.Workbooks.Open(excel_file)
for sheet in wb.Worksheets:
sheet_name = sheet.Name
sheet.PageSetup.Zoom = False # Disable zoom
### Select col/rows and clear grouping
sheet.UsedRange.ClearOutline()
wb.SaveAs('<file path>/excelfile_out.xlsx')