Excel.Application  excel;  
string FileName = Application.StartupPath + "\\test.xls";//若文件test.xls有三個工作表sheet1,sheet2,sheet3
Excel._Workbook  objWorkbook;  
Excel._Worksheet  objWorkSheet;  
 
excel=  new  Excel.ApplicationClass();; 
excel.Visible = true ;
objWorkbook  =  excel.Workbooks.Add( FileName); objWorkSheet  =  (Excel._Worksheet)xBk.ActiveSheet;
string strSheets = xSt.Name ; //這裡可以求出當前工作表的名sheet1
//現在想求出所有的工作表名,但是求不出來
for(int i = 0 ; i < xBk.Sheets.Count ; i++)
{
strSheets += ((Excel._Worksheet)xBk.Sheets[i]).Name;
}
//請高手指教 , 3Q

解决方案 »

  1.   

    Excel.ApplicationClass excel = new Excel.ApplicationClass();
    Excel.Workbook workBook = excel.Workbooks.Open(fileName,
    Type.Missing, Type.Missing, Type.Missing, Type.Missing,
    Type.Missing, Type.Missing, Type.Missing, Type.Missing,
    Type.Missing, Type.Missing, Type.Missing, Type.Missing,
    Type.Missing, Type.Missing);可以workBook.Sheets[i].Name来取得sheet名字
      

  2.   

    上面的代碼錯了,正確為:
    Excel.Application  excel;  
    string FileName = Application.StartupPath + "\\test.xls";//若文件test.xls有三個工作表sheet1,sheet2,sheet3
    Excel._Workbook  objWorkbook;  
    Excel._Worksheet  objWorkSheet;  
     
    excel=  new  Excel.ApplicationClass();; 
    excel.Visible = true ;
    objWorkbook  =  excel.Workbooks.Add( FileName);objWorkSheet  =  (Excel._Worksheet)objWorkbook.ActiveSheet;
    string strSheets = objWorkSheet.Name ; //這裡可以求出當前工作表的名sheet1
    //現在想求出所有的工作表名,但是求不出來
    for(int i = 0 ; i < objWorkbook.Sheets.Count ; i++)
    {
    strSheets += ((Excel._Worksheet)objWorkbook.Sheets[i]).Name;
    }
    //請高手指教 , 3Q
      

  3.   

    for(int i = 0 ; i < objWorkbook.Sheets.Count ; i++)
    {
    strSheets += ((Excel._Worksheet)objWorkbook.Sheets[i]).Name;
    }改为:
    for(int i = 0 ; i < objWorkbook.Worksheets.Count ; i++)

       strSheets += objWorkbook.Worksheets[i].Name;
    }