我正在尝试在A列中找到最后一行,并使用“填充系列”格式填充最后一行下方的单元格。我的代码如下所示。
这里有几点注意事项1)在确定来源范围和填充范围之前先对工作表进行分组选择2)列数据类型可能因工作表而异,但是当我指定确切范围时,填充序列格式会起作用。
import win32com.client as win32 excel = win32.gencache.EnsureDispatch('Excel.Application') excel.Visible = True wb = excel.Workbooks.Open ('D:\\Data Str\\Test Files\\Book1.xls') ws = wb.Worksheets(['Sheet1','Sheet2']) ws.Select() for sheet in ws: lastRow = sheet.UsedRange.Rows.Count print (lastRow) sourceRange = sheet.Range("A") & lastRow fillRange = sheet.Range("A") & lastRow + 1 sourceRange.AutoFill(fillRange, win32.constants.xlFillSeries)
代码按预期运行,直到
sourceRange
变量出现以下错误。
com_error:(-2147352567,“发生了异常。”,(0,无,无,无,0,-2146827284),无)
我的预期输出和示例数据集显示在下表中。两列分别对应于Sheet1和Sheet 2的A列。
Key (Sheet1) Date (Sheet 2)
1 01/11/2019
2 02/11/2019
3 03/11/2019
4 04/11/2019
5 05/11/2019
6 06/11/2019
7 07/11/2019
8 08/11/2019
9 09/11/2019
10 10/11/2019
11 11/11/2019
Expected Result
Key (Sheet1) Date (Sheet 2)
1 01/11/2019
2 02/11/2019
3 03/11/2019
4 04/11/2019
5 05/11/2019
6 06/11/2019
7 07/11/2019
8 08/11/2019
9 09/11/2019
10 10/11/2019
11 11/11/2019
12 12/11/2019
我正在尝试在A列中找到最后一行,并使用“填充系列”格式填充最后一行下方的单元格。我的代码如下所示。这里有几点注意事项1)工作表是分组选择的...
似乎问题是我没有正确参考和定义分组表中单元格的范围。请查看我的代码上的注释(#):