有没有办法,使用win32com,指定Python只选择/复制/粘贴/自动填充/等一个在到达空单元格时停止的范围?
即。 范围(A1:A%完)
当然对xlrd库建议开放,但我的整个脚本已经在使用win32com。感谢任何提示人员!
import win32com.client as win32
excel = win32.gencache.EnsureDispatch('Excel.Application')
source = excel.Workbooks.Open("C:\source")
excel.Range("A:AA").Select()
excel.Selection.Copy()
copy = excel.Workbooks.Open("C:\copy")
excel.Range("E:AE").Select()
excel.Selection.PasteSpecial()
答案 0 :(得分:1)
您可以通过
获取最后一个非emtpy单元格XlDirectionDown = 4
last = wb.Range("A:A").End(XlDirectionDown)
range = wb.Range("A1:A"+str(last))
XlDirectionDown
是一个XlDirection枚举项(xlDown
),您也可以通过EnsureDispatch调度从COM获取其值:
xlApp = win32com.client.gencache.EnsureDispatch('Excel.Application')
import win32com.client.constants as cc
XlDirectionDown = cc.xlDown
第一行为win32com构建Excel的类型库,这使得常量可用。