我很难弄清楚如何删除整个空行。当该行是Excel表的一部分时。
所以我尝试使用以下代码。但它保留了表的格式,不适用于像Count If这样的函数,因为它计算那些空白行。
from openpyxl import load_workbook as lw
wb = lw(file)
ws = wb['Sheet']
endrow = 10 #target row from which I will delete
#delete entire rows from endrow to the end of the sheet
for i in range(endrow, ws.max_row + 1):
wsRemesas.delete_rows(i)
我希望这些行像默认文件一样完全为空。不是表的一部分或具有格式。
谨致问候。
我使用了这个解决方案:
import xlwings as xw
from xlwings.constants import DeleteShiftDirection
app = xw.App(visible=False)
wb = app.books.open('PathtoFile')
sht = wb.sheets['SheetName']
endrow = XX #number of target row from you want to delete below
# Delete after endrow till row 10,000
sht.range(str(endrow)+':10000').api.Delete(DeleteShiftDirection.xlShiftUp)
wb.save()
app.kill()