正好我在给一个工程编写范例程序:
把分全部给我,不然.....送值部分:
Excel.Application  ex=new Excel.Application(); ex.Workbooks.Add(System.Windows.Forms.Application.StartupPath+@"\abc.xls");
// ex.Visible=true;
for (int i=1;i<=4;i++)
{
ex.Cells[i,1]=i.ToString();
ex.Cells[i,2]="'bbb2";
ex.Cells[i,3]="'ccc3";
ex.Cells[i,4]="'aaa4";
}ex.Visible=true;
//清除内容,套打要用到
ex.get_Range(ex.Cells[1,1],ex.Cells[1,4]).ClearContents();//删除行
// ex.get_Range(ex.Cells[1,1],ex.Cells[2,4]).Clear();//清除格线,套打要用到
ex.get_Range(ex.Cells[1,1],ex.Cells[3,4]).Borders.Value=0; //插入分页符号到目标单元格之前
ex.ActiveWindow.SelectedSheets.HPageBreaks.Add(ex.Cells[6,1]);//把某区域复制到目标单元格
ex.get_Range(ex.Cells[1,1],ex.Cells[5,4]).Copy(ex.Cells[6,1]); 
//避免提问“是否保存”
ex.ActiveWorkbook.Saved=true;  //预览
ex.ActiveWorkbook.PrintPreview(null);
//关闭Excel
// ex.Quit();
ex=null;从excel读入:
string[,] a=new System.String[100,52];
Excel.Application  ex=new Excel.Application();
ex.Workbooks.Add(System.Windows.Forms.Application.StartupPath+@"\abc.xls");
// ex.Visible=true;
for (int i=0;i<20;i++)
{
for (int j=0;j<26;j++)
{
a[i,j]=ex.get_Range(ex.Cells[i+1,j+1],ex.Cells[i+1,j+1]).Text.ToString(); //取单元格值

}
}
MessageBox.Show("ok");
ex.Quit();
ex=null;

解决方案 »

  1.   

    再给你一个参考网址:http://www.cndot.net/article/show.asp?id=866不过我的例子比它全面多了。
      

  2.   

    Excel.Application  excelApp=new Excel.Application();
    Excel.Workbook excelBook=excelApp.Workbooks.Open( filePath, 0, true, 5,"", "", true, Excel.XlPlatform.xlWindows, "\t", false, false,0,true,null,null);
    excelApp.Visible=true;
    //get worksheet collection
    Excel.Sheets sheets = excelBook.Worksheets;// get the  worksheet from the collection
    // of worksheets
    Excel.Worksheet worksheet = (Excel.Worksheet)sheets.get_Item(1);// loop through n rows of the spreadsheet and place each row in the list view
    for (int i = 1; i <= worksheet.Columns.Count; i++)
    {
    Excel.Range range = worksheet.get_Range("A"+i.ToString(), "J" + i.ToString());
    System.Array myvalues = (System.Array)range.Cells.Value2;
    string[] strArray = ConvertToStringArray(myvalues);
    fileList.Items.Add(new ListViewItem(strArray));
    }
    从www.c-sharpcorner.com上抄的。
      

  3.   

    我想问一下各位大虾。我用了楼上几位大虾的程序,为什么在执行Excel.Application  excelApp=new Excel.Application();是总报错:
    报错信息如下:
    “/test”应用程序中的服务器错误。
    --------------------------------------------------------------------------------拒绝访问。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.UnauthorizedAccessException: 拒绝访问。 未授权此 ASP.NET 进程访问所请求的资源。出于安全原因,默认的 ASP.NET 进程标识为“{machinename}\ASPNET”,它只具有有限的特权。请考虑授予该 ASP.NET 进程标识访问此资源的权限。 若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”以添加“{machinename}\ASPNET”用户。突出显示此 ASP.NET 帐户,在“允许”列中选中“写”框。源错误: 
    行 188: }
    行 189: */
    行 190: Excel.Application ex=new  Excel.Application();  //这行
    为红色,程序执行到这儿!
    行 191:         int i;
    行 192: ex.Workbooks.Add("f:\\myexcel\\"+this.xlfile.Text+".xls");
     
      

  4.   

    "拒绝访问"我也遇到过,可参考
    http://support.microsoft.com/default.aspx?scid=kb;en-us;Q288367
    解决。