向C#中已经创build的Excel工作表添加额外的数据

我正在C#中创build一个简单的应用程序,我将数据保存在已创build的Excel工作表中。 要做到这一点,首先我正在读取行中的数据,如果这行是空的,这意味着我必须保存我的新数据。 我有一个Excel表格,其中包含以下详细信息:

S.No | Name | Email ID | Phone Number 

所以我先检查一下是哪一个S.No 假设它是4,这意味着我必须在第6行input数据, S.No = 5因为标题占据了一行。

为此,我首先打开Excel文件,然后扫描行。 我能够扫描它,但是当我尝试保存它时,它将用新的文件replace当前的文件,并且旧的数据丢失。 这是我在做什么:

 Excel.Application xlApp = new Excel.Application(); Excel.Workbook xlWorkbook = xlApp.Workbooks.Open("<filepath>", 0, true, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); Excel._Worksheet xlWorksheet = (Excel._Worksheet)xlWorkbook.Sheets[1]; Excel.Range xlRange = xlWorksheet.UsedRange; int rowCount = xlRange.Rows.Count; int colCount = xlRange.Columns.Count; for(parse = 2; parse <= 100; parse++) { if (xlRange.Cells[parse, 1].Value2 != null) { Sno++; } else { break; } } //Sno contains the recent serial number 

在这之后,我只是填写数据并保存文件:

 xlWorksheet.Cells[Sno + 2, 1] = Sno + 1; xlWorksheet.Cells[Sno + 2, 2] = NameTextBox.Text; xlWorksheet.Cells[Sno + 2, 3] = EmailIdTextBox.Text; xlWorksheet.Cells[Sno + 2, 4] = PhoneNumberTextBox.Text; xlWorksheet.SaveAs("<filepath>"); xlWorkbook.Close(); xlApp.Quit(); 

但是在保存时说文件已经退出了,因为我正在执行SaveAs 。 有什么办法只是保存文件或其他select。

请帮忙。

为了节省看到这个

还要考虑我在评论中提到的workaruond。