zoukankan      html  css  js  c++  java
  • Excel的操作总结<1>

    程序中建立Excel文件
     1using Excel = Microsoft.Office.Interop.Excel;
     2using System;
     3using System.Runtime;
     4using System.Reflection;
     5//需要添加Excel的COM引用
     6public void CreateExcelFile(string FilePath)
     7{
     8if (!File.Exists(FilePath))
     9{
    10Excel.ApplicationClass ExcelApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
    11Excel.Workbook ExcelBook = ExcelApp.Workbooks.Add(Missing.Value);
    12ExcelApp.DisplayAlerts = false;
    13
    14Excel.Worksheet ExcelSheet =
         (Excel.Worksheet)ExcelBook.Worksheets.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value);
    15ExcelSheet.Name = "DIV_LINK";
    16                
    17ExcelBook.SaveAs(FilePath, Excel.XlFileFormat.xlWorkbookNormal,
         Missing.Value, Missing.Value,
    falsefalse, Excel.XlSaveAsAccessMode.xlShared,
         Missing.Value, Missing.Value,Missing.Value,Missing.Value,Missing.Value);
    18ExcelBook.Close(Excel.XlSaveAction.xlDoNotSaveChanges, Missing.Value, Missing.Value);
    19
    20ExcelApp.Quit();
    21
    22System.Runtime.InteropServices.Marshal.ReleaseComObject(ExcelApp);
    23GC.Collect();
    24}

    25//这里可以直接添加操作Excel文件的代码
    26}
    补充:在上文的注释处添加的用Jet访问Excel插入数据的代码:
     1string ConnStr =
     2"provider=Microsoft.Jet.Oledb.4.0;data source=" + FilePath + ";Extended Properties=Excel 8.0;";
     3OleDbConnection OleConn = new OleDbConnection(ConnStr);
     4OleDbCommand OleCmd = new OleDbCommand();
     5OleCmd.Connection = OleConn;
     6OleConn.Open();
     7//DT_1是我的一个数据表
     8for (int i = 0; i < DT_1.Rows.Count; i++)
     9{
    10/* SQL语句中需要注意的是把Excel当成Jet数据库时
    11*  Excel的WorkSheet就是对应的数据表,
    12*  需要给WorkSheet名加上$后缀,在普通SQL语句中需要用[]将表包起来,
    13*  在DTS语句中,不需要用[]包装WorkSheet名,但仍需要有$后缀
    14*  比如:
    15*  SELECT F1,F2 FROM OPENROWSET('Microsoft.JET.OLEDB.4.0','Excel 8.0;HDR=NO;Database=C:/A.xls',Sheet1$)
    16*/

    17OleCmd.CommandText = "insert into [DIV_LINK$](F1) values('" + DT_1.Rows[i][1].ToString() + "')";
    18OleCmd.ExecuteNonQuery();
    19}

    20OleConn.Close();


  • 相关阅读:
    序列&权限&索引&视图的语句
    currval &nextval的差异理解
    数据库表的创建、修改、清空、数据的插入、更新、删除 语句
    数据库(日期、字符大小写控制、转换)函数
    数据库的相关语句(where,order by)
    多线程的两种方法(卖票系统展示)
    杨辉三角的几种方法
    网络编程的基础代码
    文件的复制(逐字节/整体)
    gui小计算器的程序写法
  • 原文地址:https://www.cnblogs.com/lixx/p/1183881.html
Copyright © 2011-2022 走看看