当前位置:编程学习 > C#/ASP.NET >>

C#操作Excel的代码

怎么实现用代码在程序中设计Excel的样式,并当做模板,使数据库中的数据照模板样式填充到创建的Excel文件中,谢谢 --------------------编程问答-------------------- 参考
using System;   
using System.Collections.Generic;   
using System.Text;   
using System.Data;   
using System.Data.OleDb;   
using System.Data.SqlClient;   
using System.IO;   
using Microsoft.Office.Interop.Excel;   
namespace TestAccess   
{   
    class Program   
    {   
        static void Main(string[] args)   
        {   
  
            string strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;";   
            strConnection += @"Data Source=C:\Documents and Settings\v-changl\My Documents\couse.xlsx;";   
            strConnection += "Extended Properties=\"Excel 12.0 Xml;HDR=YES\";";   
            OleDbConnection objConnection = new OleDbConnection(strConnection);   
            objConnection.Open();   
            OleDbDataAdapter myCommandd = new OleDbDataAdapter("select * from [Sheet1$]", objConnection);   
            DataSet ds = new DataSet();   
            myCommandd.Fill(ds, "[Sheet1$]");   
            System.Data.DataTable dt = ds.Tables["[Sheet1$]"];   
            Console.WriteLine(dt.Columns[0].ToString());   
            Console.WriteLine(dt.Columns[1].ToString());   
            DataRow drDisplay = dt.Rows[0];   
            int[] num = new int[dt.Columns.Count];   
            for (int j = 0; ; )   
            {   
                for (int i = 0; i < dt.Columns.Count; i++)   
                {   
  
                    if (drDisplay[i] is DBNull) ;   
                    else  
                        num[i] += Convert.ToInt32(drDisplay[i]);   
  
                }   
                if (++j >= dt.Rows.Count) break;   
                drDisplay = dt.Rows[j];   
            }   
            objConnection.Close();   
            object MissingValue = Type.Missing;   
            Microsoft.Office.Interop.Excel.Application app = new Application();   
            Microsoft.Office.Interop.Excel.Workbook wbook = app.Workbooks.Open(@"C:\Documents and Settings\v-changl\My Documents\couse.xlsx", MissingValue,   
MissingValue, MissingValue, MissingValue,   
MissingValue, MissingValue, MissingValue,   
MissingValue, MissingValue, MissingValue,   
MissingValue, MissingValue, MissingValue,   
MissingValue);   
            Microsoft.Office.Interop.Excel.Worksheet wsheet = wbook.ActiveSheet as Microsoft.Office.Interop.Excel.Worksheet;   
            for (int i = 0; i < dt.Columns.Count; i++)   
            {   
                //注意下面是i+1,,excel小标默认从1开始   
                wsheet.Cells[dt.Rows.Count + 2, i + 1] = num[i].ToString();   
            }   
  
            wbook.Save();   
            wbook.Close(true, null, null);   
            System.Runtime.InteropServices.Marshal.ReleaseComObject(wsheet);   
            System.Runtime.InteropServices.Marshal.ReleaseComObject(wbook);   
            System.Runtime.InteropServices.Marshal.ReleaseComObject(app);   
            wsheet = null;   
            wbook = null;   
            app = null;   
            GC.Collect();   
        }   
    }   
}  

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/LCL_data/archive/2009/05/06/4154784.aspx
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,