C# 使用OleDB写数据到excel的插入数据语句!!!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 使用OleDB写数据到excel的插入数据语句!!!相关的知识,希望对你有一定的参考价值。
将
double value = 10.215;
这个10.215数据写到E3这个单元格是否可以?就举这个例子( sql语句 ,就是sql写不出来 )就可以了。初学,insert很多次都还没有预期效果,谢谢!!!更新也写上最好!!!
操作Excel,常见的有两种方法:
一种直接把它作为数据库来处理,这时Excel的sheet就是数据库中的一张表。
一种用程序直接操纵Excel,可以对Excel文档做任何处理。例如:
Excel.Application oExcel = new Excel.Application();
Excel.Workbooks oBooks;
Excel.Workbook oBook;
Excel.Sheets oSheets;
Excel.Worksheet oSheet;
Excel.Range oCells;
..........
sTemplate = AppPath + @"templates\" + template;
oExcel.DisplayAlerts = false;
oBooks = oExcel.Workbooks;
oBooks.Add(sTemplate);
oBook = oBooks[1];
oSheets = oBook.Worksheets;
oSheet = (Excel.Worksheet)oSheets[1];
oCells = oSheet.Cells;
try
oCells[3, 5] =10.215;
..............
oSheet.SaveAs(sFile, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Excel.XlSaveAsAccessMode.xlExclusive, Missing.Value, Missing.Value,
Missing.Value);
oBook.Close(Missing.Value, Missing.Value, Missing.Value);
oBooks.Close();
catch(Exception ex)
return ex.Message;
finally
if (oCells != null)
Marshal.ReleaseComObject(oCells);
if (oSheet != null)
Marshal.ReleaseComObject(oSheet);
if (oSheets != null)
Marshal.ReleaseComObject(oSheets);
if (oBook != null)
Marshal.ReleaseComObject(oBook);
if (oBooks != null)
Marshal.ReleaseComObject(oBooks);
if (oExcel != null)
oExcel.Quit();
Marshal.ReleaseComObject(oExcel);
oCells = null;
oSheets = null;
oBook = null;
oBooks = null;
oExcel = null;
oSheet = null;
System.GC.Collect();
本回答被提问者采纳
如何使用 oledb 在 c# 中将下拉列数据插入到 excel 中
【中文标题】如何使用 oledb 在 c# 中将下拉列数据插入到 excel 中【英文标题】:how to insert dropdown column data into excel in c# using oledb 【发布时间】:2013-07-15 16:51:48 【问题描述】:我想将数据插入到 Excel 中。但是,excel 包含下拉列和普通列。 我正在使用 oledb 提供程序将数据插入到 excel 普通列中,但我无法使用 oledb 插入下拉列值,有人能指出我正确的方向吗?
【问题讨论】:
【参考方案1】:使用Excel Interop可以实现下拉列表。
下面是示例代码
// Create an Excel object
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
//Create workbook object
string str = @"E:\test.xlsx";
Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Open(Filename: str);
Microsoft.Office.Interop.Excel.Worksheet worksheet1 = workbook.ActiveSheet;
Microsoft.Office.Interop.Excel.Range range = worksheet1.get_Range("A1","A1");
Microsoft.Office.Interop.Excel.DropDowns xlDropDowns;
Microsoft.Office.Interop.Excel.DropDown xlDropDown;
xlDropDowns = ((Microsoft.Office.Interop.Excel.DropDowns)(workbook.ActiveSheet.DropDowns(Type.Missing)));
xlDropDown = xlDropDowns.Add((double)range.Left, (double)range.Top, (double)range.Width, (double)range.Height, true);
xlDropDown.AddItem("item1",1);
xlDropDown.AddItem("item2", 2);
//Save the workbook
workbook.Save();
//Close the Workbook
workbook.Close();
// Finally Quit the Application
((Microsoft.Office.Interop.Excel._Application)excel).Quit();
【讨论】:
@RavitejaChekuri Chekuri :如果你得到答案,请将其标记为正确以上是关于C# 使用OleDB写数据到excel的插入数据语句!!!的主要内容,如果未能解决你的问题,请参考以下文章
使用 OleDb 和 Access 数据库引擎的 C# Excel 插入错误
通过 C# 和 OleDb 在 Excel 电子表格中插入一行
通过 Oledb c# 防止重复数据从 Excel 到 db