Excel.Worksheet xS = (Excel.Worksheet)xBk02.Worksheets["Sheet2"];应该可以呀!!我今天下午就是这个思路...
你换一下参数再试一试:Excel.Worksheet xS = (Excel.Worksheet)xBk02.Worksheets[2];

解决方案 »

  1.   

    Excel.Worksheet xS = xBk02.Worksheets(1);
      

  2.   

    or Excel.Worksheet xS = xBk02.get_item(1);
      

  3.   

    其实sheet1也是一个sheet的名字啊。你可以把这个名字改了,仍然可以调用这sheet。不要用worksheets(1)这种形式来调用sheet。应该用sheet的名字来调用,如下myworksheet["sheetname$"],即可.如果要获知worksheet的名字,myworksheet.name.tostring即可。
      

  4.   

    注意,对于已经存在的excel表,要在最后加上$,否则不行。所以你前面的"sheet2"不能够调用他。但是对于还不存在的表,比如你准备新创建的表,就不能够用这个$。
      

  5.   

    excel.Application.Workbooks.Add(@"d:\Report\sss.xls");
    当使用office xp时出错