我正在尝试加载一个现有的Excel文件并在工作簿中创建一个新的工作表,但是我的代码使用openpyxl
时无法工作。
rb = load_workbook("C:\Raw_Dump.xlsx")
rb.create_sheet("Sheet2")
sheet1 = rb.worksheets[0]
任何帮助都将不胜感激。
你需要将工作簿保存
为相同的文件名:
rb.save(r"C:\Raw_Dump.xlsx")
import openpyxl
ws_name = r"Raw_Dump.xlsx"
rb = openpyxl.load_workbook(ws_name)
rb.create_sheet("Sheet2")
rb.save(ws_name)
我花了很长时间搜索,发现最好的方法是进行表格删除。以下代码适用于我:
for sheet in wb.sheetnames:
if sheet not in "MY_SHEET_I_WANNA_KEEP":
rm_sheet = wb[sheet];
wb.remove_sheet(rm_sheet)
wb.save("JustOneSheet.xlsx")
sheet not in "MY_SHEET_I_WANNA_KEEP"
进行了一个子串搜索操作。这可能不是你想要的。比如,它会保留类似WANNA
和SHEET
的工作表。此外,OP 并没有要求这样做。 - Jean-François Fabre