python 使用xlrd/xlrt/utlxlt 模块都只能对excel读写不能删除操作吗解决思路
python 使用xlrd/xlrt/utlxlt 模块都只能对excel读写不能删除操作吗
想知道 python对于excel 的删除行 操作是怎么实现的。
高级版本是 删除A-C列 G-H列,这样的操作。
谢谢
------解决思路----------------------
2种做法:
第一种用com
第二种用另外的库
http://sourceforge.net/projects/pyworkbooks/
想知道 python对于excel 的删除行 操作是怎么实现的。
高级版本是 删除A-C列 G-H列,这样的操作。
谢谢
------解决思路----------------------
2种做法:
第一种用com
import win32com.client
from win32com.client import constants
f = r"h:\Python\Examples\test.xls"
DELETE_THIS = "X"
exc = win32com.client.gencache.EnsureDispatch("Excel.Application")
exc.Visible = 1
exc.Workbooks.Open(Filename=f)
row = 1
while True:
exc.Range("B%d" % row).Select()
data = exc.ActiveCell.FormulaR1C1
exc.Range("A%d" % row).Select()
condition = exc.ActiveCell.FormulaR1C1
if data == '':
break
elif condition == DELETE_THIS:
exc.Rows("%d:%d" % (row, row)).Select()
exc.Selection.Delete(Shift=constants.xlUp)
else:
row += 1
# Before
#
# a
# b
# X c
# d
# e
# X d
# g
#
# After
#
# a
# b
# d
# e
# g
第二种用另外的库
http://sourceforge.net/projects/pyworkbooks/