之前在工作中使用python处理excel的时候,要用到python对excel表格中的数据全部删除,因此在网上找资料,但是随便一搜你会看到很多处理excel的方法库,比如pandas、win32com、openpyxl。但是大都不是很准确,总是掺杂一些其他操作不简易,很苦恼。后来找到这个-->
https://blog.youkuaiyun.com/syk_cndn/article/details/54812817
代码是这样:
import win32com.client
sht = win32com.client.Dispatch('Excel.Application').Workbooks.Open(goal_file).Worksheets('工作日报')
sht.Rows(1).Delete()
简洁易懂,马上就拿过来用
但是后来发现在实际过程中修改之后excel需要保存和关闭,但是之前简单有他简单的弊端,没有考虑到这点,又找了解决办法,通用又是长篇夹杂其他操作,直接复制使用别人的代码都不可用,后来根据自己的理解写了这个代码,拿到即用,功能是将excel文档中的sheet表中数据删除,然后保存,最后关闭excel
如下coding:
import win32com.client
from win32com.client import Dispatch
import os
xlBook = win32com.client.Dispatch('Excel.Application').Workbooks.Open('C:/Users/hand_wl/Desktop/汇率表.xlsx')
sht = xlBook.Worksheets('Sheet1')
#这里的函数可以自己遍历去读,也可以根据实际情况直接设定一个较大的值
for i in range(1,11):
#excel删除行级操作,删除第一行后,后面的会覆盖前面删除的行
sht.Rows(1).Delete()
xlBook.Save()
xlBook.Close(SaveChanges=0)
留个笔记,也希望可以帮到一些人