1
using Excel = Microsoft.Office.Interop.Excel;
2
using System;
3
using System.Runtime;
4
using System.Reflection;
5
//需要添加Excel的COM引用
6
public void CreateExcelFile(string FilePath)
7
{
8
if (!File.Exists(FilePath))
9
{
10
Excel.ApplicationClass ExcelApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
11
Excel.Workbook ExcelBook = ExcelApp.Workbooks.Add(Missing.Value);
12
ExcelApp.DisplayAlerts = false;
13![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
Excel.Worksheet ExcelSheet =
(Excel.Worksheet)ExcelBook.Worksheets.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value);
15
ExcelSheet.Name = "DIV_LINK";
16
17
ExcelBook.SaveAs(FilePath, Excel.XlFileFormat.xlWorkbookNormal,
Missing.Value, Missing.Value,false, false, Excel.XlSaveAsAccessMode.xlShared,
Missing.Value, Missing.Value,Missing.Value,Missing.Value,Missing.Value);
18
ExcelBook.Close(Excel.XlSaveAction.xlDoNotSaveChanges, Missing.Value, Missing.Value);
19![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
ExcelApp.Quit();
21![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
System.Runtime.InteropServices.Marshal.ReleaseComObject(ExcelApp);
23
GC.Collect();
24
}
25
//这里可以直接添加操作Excel文件的代码
26
}
补充:在上文的注释处添加的用Jet访问Excel插入数据的代码:![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
(Excel.Worksheet)ExcelBook.Worksheets.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value);
15
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
Missing.Value, Missing.Value,false, false, Excel.XlSaveAsAccessMode.xlShared,
Missing.Value, Missing.Value,Missing.Value,Missing.Value,Missing.Value);
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
1
string ConnStr =
2
"provider=Microsoft.Jet.Oledb.4.0;data source=" + FilePath + ";Extended Properties=Excel 8.0;";
3
OleDbConnection OleConn = new OleDbConnection(ConnStr);
4
OleDbCommand OleCmd = new OleDbCommand();
5
OleCmd.Connection = OleConn;
6
OleConn.Open();
7
//DT_1是我的一个数据表
8
for (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
*/
17
OleCmd.CommandText = "insert into [DIV_LINK$](F1) values('" + DT_1.Rows[i][1].ToString() + "')";
18
OleCmd.ExecuteNonQuery();
19
}
20
OleConn.Close();
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)