xlwings:删除col |从Excel行

问题描述 投票:2回答:2

如何在Excel中删除行?

wb = xw.Book('Shipment.xlsx')
wb.sheets['Page1_1'].range('1:1').clear()

.clear()用于删除内容。我想删除该行。我很惊讶.clear()函数有效,但不是.delete()

任何建议有帮助!谢谢

excel python-3.x xlwings
2个回答
3
投票

我在Windows7上使用xlwings 0.11.7和Python 3.6.0。我这样做,它可以很好地工作:

import xlwings as xw
from xlwings.constants import DeleteShiftDirection

app = xw.App()
wb = app.books.open('name.xlsx')
sht = wb.sheets['Sheet1']

# Delete row 2
sht.range('2:2').api.Delete(DeleteShiftDirection.xlShiftUp) 

# Delete row 2, 3 and 4 
sht.range('2:4').api.Delete(DeleteShiftDirection.xlShiftUp) 

# Delete Column A
sht.range('A:A').api.Delete(DeleteShiftDirection.xlShiftToLeft)

# Delete Column A, B and C
sht.range('A:C').api.Delete(DeleteShiftDirection.xlShiftToLeft)

wb.save()
app.kill()

1
投票

尝试使用.Rows,例如:

wb.sheets("Page1_1").Rows(1).Delete

您同样会使用.Columns删除列:

wb.sheets("Page1_1").Columns(1).Delete
© www.soinside.com 2019 - 2024. All rights reserved.