我有一个使用Microsoft.Office.Interop.Excel的应用程序。 此应用程序应该每次都将数据添加到excel文件中,那么我应该从哪里开始告诉应用程序?如何让第一个空单元格开始添加?
Excel.Application app;
Excel.Workbook Wbook;
Excel._Worksheet ws_1;
Excel._Worksheet ws_2;
Excel._Worksheet ws_3;
app = new Excel.Application();
Wbook = app.Workbooks.Add();
app.Workbooks.Open("D:\\tst.xlsx");
ws_1 = (Excel._Worksheet)app.Worksheets.get_Item(1);
ws_2 = (Excel._Worksheet)app.Worksheets.get_Item(2);
ws_3 = (Excel._Worksheet)app.Worksheets.get_Item(3);
答案 0 :(得分:1)
您可以获取范围并检查单元格值:
int row, column;
Range allCells = ws_1.Cells.get_Range("A1", "Z1");
foreach (Range c in allCells)
{
string temp = c.Formula as string;
if(string.IsNullOrEmpty(temp))
{
row = c.Row;
column = c.Column;
break;
}
}
然后row
和column
是您的第一个empty cell
的行和列索引。
答案 1 :(得分:1)
Cells.Find("*",SearchOrder:=xlByRows,SearchDirection:=xlPrevious).Row
即使最后一行中只有一个单元格有数据,也会返回最后一个单元格的行号。
您还可以使用SpecialCells并避免循环数据:
Range rng = new Range();
rng = Cells.SpecialCells(xlCellTypeLastCell)