上一篇 | 下一篇

Reading an Excel file in C#

发布: 2008-7-04 11:43 | 作者: webmaster | 来源: 本站原创 | 查看: 85次


我想要通过C#代码调用test.xls的内容,更新里面的数据段
我的代码如下:

public class BankParserClass

Excel.Application excelApp = new Excel.ApplicationClass();

Excel.Workbook newWorkbook = excelApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
( this line of code gets an error    here on excelApp : denotes a fileld where a class is expected)                                                 

string workbookPath = "c:/test.xls";
Excel.Workbook excelWorkbook = excelApp.Workbooks.Open(workbookPath,
      0, false, 5, "", "", false, Excel.XlPlatform.xlWindows, "",
      true, false, 0, true, false, false);
Excel.Sheets excelSheets = excelWorkbook.Worksheets;
      string currentSheet = "Sheet1";
Excel.Worksheet excelWorksheet = (Excel.Worksheet)excelSheets.get_Item(currentSheet);
Excel.Range excelCell =(Excel.Range)excelWorksheet.get_Range("A1", "A1");

没有实现


解决方法
This is application is kind of test application which tells how to use Microsoft Excel 10.0 Object Library, by using this library, how to load/read the excel contents.

Note: Here, I have created test.xls file which will be copied to c:\ before run the application.

Application developed using sample console application under VC# projects.

Steps:

 1. Include the following reference into the project :

  Microsoft Excel 10.0 Object Library

  Microsoft Office 10.0 Object Library

 

2. Include the name space i.e. using Excel.

3. Creating the ExcelApplicationClass,WorkBook and Range.

Find the complete code below:

using System;
using Excel;
namespace TestExcel
{
 /// <summary>
 /// Summary description for ExcelApplication.
 /// </summary>
 class ExcelApplication
 {
      /// <summary>
  /// The main entry point for the application.
  /// </summary>
      [STAThread]
      static void Main(string[] args)
      {
        
         string Path = @"c:\test.xls";
         // initialize the Excel Application class
         Excel.ApplicationClass app = new ApplicationClass();
         // create the workbook object by opening the excel file.
         Excel.Workbook workBook = app.Workbooks.Open(Path,
                                                      0,
                                                      true,
                                                      5,
                                                      "",
                                                      "",
                                                      true,
                                                      Excel.XlPlatform.xlWindows,
                                                      "\t",
                                                      false,
                                                      false,
                                                      0,
                                                      true,
                                                      1,
                                                      0);
         // get the active worksheet using sheet name or active sheet
         Excel.Worksheet workSheet = (Excel.Worksheet)workBook.ActiveSheet;
         int index = 0;
         // This row,column index should be changed as per your need.
         // i.e. which cell in the excel you are interesting to read.
         object rowIndex = 2;
         object colIndex1 = 1;
         object colIndex2 = 2;
         try
         {
            while ( ((Excel.Range)workSheet.Cells[rowIndex,colIndex1]).Value2 != null )
            {
               rowIndex = 2+index;
               string firstName = ((Excel.Range)workSheet.Cells[rowIndex,colIndex1]).Value2.ToString();
               string lastName = ((Excel.Range)workSheet.Cells[rowIndex,colIndex2]).Value2.ToString();
               Console.WriteLine("Name : {0},{1} ",firstName,lastName);
               index++;
            }
         }
         catch(Exception ex)
         {
            app.Quit();
            Console.WriteLine(ex.Message);
         }
      }
    
 }
}

TAG: Reading Excel file

字号: | 推荐给好友

评分:0

我来说两句