2014-09-03 77 views
0

所以我在Visual Studio 2013中工作,我试图返回工作表中给定单元格中的字符串。C#Visual Studio中的Excel COM

public StringBuilder MyCellData(int rCnt, int cCnt) 
    { 
     Excel.Application xlApp; 
     Excel.Workbook xlWorkBook; 
     Excel.Worksheet xlWorkSheet; 
     Excel.Range range; 

     StringBuilder str = new StringBuilder(""); 

     xlApp = new Excel.Application(); 
     xlWorkBook = xlApp.Workbooks.Open(@"C:\Users\james.naughton\Documents\Visual Studio 2013\Projects\QA_Automation\QA_Automation\copyChangeReportWAccountID.xlsx", 0, true, 5, "Landeck1", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); 
     xlWorkSheet = (Excel.Worksheet)xlWorkBook.Sheets.get_Item(1); 


     range = xlWorkSheet.UsedRange[rCnt,cCnt]; 
     str.Append((range.Item[rCnt, cCnt]).ToString()); 

    return str; 

现在,每当我运行程序出于某种原因对范围和xlWorkSheet值始终COM对象,所以当它没有返回什么,我想它。有关如何访问正确的工作表并从单元返回数据的任何建议?

谢谢, 詹姆斯

回答

0

你需要让你的单元格的值:

str.Append((range.Item[rCnt, cCnt]).Value.ToString());