在工作表上查找最后使用的单元格,并将行复制到另一个工作表中?
任何答复将非常感激。 我的问题如下:
这是确定我的Excel工作表的最后一个非空单元格/行的正确方法?
xl.Worksheet sh; int lastRow; int fullRow; sh = xlApp.Workbooks.get_Item("myExcelFile").Worksheets.get_Item("MySheet"); fullRow = sh.Rows.Count; lastRow = sh.Cells[fullRow, 1].End(xl.XlDirection.xlUp).Row;
如果这确实是正确的,我如何把我的行,并将其复制到另一个工作表。 更具体地说,列A的第一个空单元格。我知道我必须使用一个类似这样的命令:
lastRow.EntireRow.Copy(FirstEmptyCell);
作为一个inttypes,我不能将其复制到我的其他表。 有什么build议么?
lastRow = sh.Cells[fullRow, 1].End(xl.XlDirection.xlUp).Row;
在这里, lastRow
是一个int
所以你不能在下一行使用它作为一个对象:
lastRow.EntireRow.Copy(FirstEmptyCell); // int doesn't have an EntireRow property
你可以做的是将两者结合成一行:
Excel.Range myLastRow; myLastRow = sh.Cells[sh.Rows.Count, 1].End(xl.xlDirection.Up).EntireRow;
现在myLastRow
是你想要复制的整个行。
myLastRow.Copy(destination);