我试图搜索很多地方,但没有看到任何关于如何使用xlutils或xlwt在Excel文件中删除现有工作表的示例代码片段与蟒蛇。谁能帮助我?如何删除excel文件中使用xlutils,xlwt,xlrd和python的现有工作表
1
A
回答
-1
不知道这些模块但你可以尝试的Win32
from win32com import client
def delete(self, number = 1):
"""
(if the sheet is the first use 1. -1 to use real number)
example: r.delete(1)
"""
sheetnumber = int(number) - 1
3
我刚刚处理了这一点,虽然这不是一般的好编码的选择,你可以使用内部工作簿 _worksheets访问和设置工作簿对象的工作表。
write_book._Workbook__worksheets = [write_book._Workbook__worksheets[0]]
这会剥夺一切,但有一个工作簿
1
我只是想确认我得到这个使用大卫答曰工作相关联的第一个工作表。这里有一个例子,我有一个电子表格(工作簿),其中有40多张需要拆分为他们自己的工作簿。我复制了主工作簿中删除所有,但一个表,并保存到一个新的电子表格:
from xlrd import open_workbook
from xlutils import copy
workbook = open_workbook(filepath)
# Process each sheet
for sheet in workbook.sheets():
# Make a copy of the master worksheet
new_workbook = copy.copy(workbook)
# for each time we copy the master workbook, remove all sheets except
# for the curren sheet (as defined by sheet.name)
new_workbook._Workbook__worksheets = [ worksheet for worksheet in new_workbook._Workbook__worksheets if worksheet.name == sheet.name ]
# Save the new_workbook based on sheet.name
new_workbook.save('{}_workbook.xls'.format(sheet.name))
1
下面的方法做了你需要的东西:
def deleteAllSheetBut(workingFolder, xlsxFILE, sheetNumberNotToDelete=1):
import win32com.client as win32
import os
excel = win32.gencache.EnsureDispatch('Excel.Application')
excel.Visible = False
excel.DisplayAlerts = False
wb = excel.Workbooks.Open(os.path.join(workingFolder, xlsxFILE))
for i in range(1, wb.Worksheets.Count):
if i != sheetNumberNotToDelete:
wb.Worksheets(i).Delete()
wb.Save()
excel.DisplayAlerts = True
excel.Application.Quit()
return
相关问题
- 1. 删除excel行xlwt,python
- 2. 如何使用JExel从现有的Excel文件中删除工作表
- 3. 如何使用python xlrd从excel工作表中检索图像
- 4. Python中的XLRD和HTTP Excel文件
- 5. 如何从一个excel工作簿提取数据并使用python xlrd/xlwt输出到另一个工作簿?
- 6. xlrd&xlwt python libs datetime问题
- 7. 如何使用xlrd或xlwt打开Excel应用程序?
- 8. Python 3使用xlrd和xlwt复制数据
- 9. 如何删除Excel工作表与PHPExcel
- 10. 如何使用Java在Excel(csv)工作表中删除一行?
- 11. 如何使用C#从Excel工作表中删除VB代码?
- 12. 使用XLRD和Python读取excel文件时出错
- 13. 使用Python操作现有的Excel工作簿使用Python
- 14. Excel的VBA:如何在所有工作表中删除空行
- 15. 如何使用Pandas在现有的Excel文件中保存新工作表?
- 16. 使用用户表格选择和删除Excel工作表
- 17. 用于EXCEL的OLEDB - 删除表[SheetName $] - 不删除工作表
- 18. pyexcelerator:如何删除excel表单中的工作表
- 19. 将Excel工作表导入到现有的Excel文件中除了一件工作
- 20. 在excel中现有工作表旁边的工作表中添加XLS文件
- 21. 使用python限制excel文件中的工作表数量
- 22. ComException当试图从Excel文件中删除工作表C#
- 23. 使用xlrd遍历工作表和工作簿
- 24. 如何删除python python中的excel行
- 25. 如何使用数据表导出excel文件后从Excel表中删除file_name?
- 26. Excel:如何在Excel文件中恢复已删除的表格?
- 27. 数据复制到Excel使用python(xlwt)
- 28. 如何删除现有的文件dropzone?
- 29. 如何删除在工作表中出现的#N/A? (VBA为Excel需要)
- 30. 使用xlrd在线Python编译器读取excel文件