C# winform 开发之Excel操作(三)------Excel表格处理(增删改)和保存
来源:互联网 发布:http 499 nginx 编辑:程序博客网 时间:2024/06/05 18:01
Excel表格的修改方式有很多。这里我介绍下,我知道的两种方法。
1.通过sql语句,修改。这也是我比较喜欢的方法。因为比较方便,和效率高。对于有数据库基础的,上手也快。
2.通过Excel提供的对象类,进行访问。这种方式,效率比较低,反应慢。因为这个操作过程,是要打开Excel文件的,Excel的开启占去了许多时间。
方法一:通过sql语句进行修改,方法类似于数据库操作。
下面给出源代码!代码中注释。
/// <summary>
/// 通过sql语句,修改并保存Excel
/// </summary>
/// <param name="strsql"></param>
/// <param name="filepath"></param>
private void DoSql(string strsql, string filepath)//这里的strsql指要执行的sql语句,filepath指Excel的路径,例如"E://1.xls"
{
try
{
string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=no;IMEX=0'";//连接Excel OLEDB协议
OleDbConnection oledCon = new OleDbConnection(ConnectionString);//创建连接对象
oledCon.Open();//开启连接
OleDbCommand oledCom = new OleDbCommand(strsql, oledCon);//
oledCom.ExecuteNonQuery();//执行sql语句
oledCon.Close();//关闭连接
}
catch (Exception err)
{
MessageBox.Show("Excel操作失败!失败原因:" + err.Message, "提示信息",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
下面再给给出一段代码,展示下如何调用上面语句。
首先,拉一个Button控件,和两个textbox
private void button1_Click(object sender, EventArgs e)
{
string num = int.Parse(textBox1.text);
string xuehao = textBox2.text;
string strsql = "Update [Sheet1$] set 旷课次数='"+num.ToString()+"' where 学号='"+xuehao+"'";
//修改数据,其中旷课次数,姓名是列名
DoSql(strsql, "E://1.xls");
}
上面举得例子是更新语句,同理,也可以通过insert语句进行插入,delete语句进行删除。这里简单举例下:
string strsql = "insert into [Sheet1$](旷课次数,姓名) values(12,'张三')";//写入新的数据
string strSql = "delete * from [Sheet1$] where 学号='张三'"; //删除一行
方法二:通过Excel对象,操作Excel表格
方法与前面Excel表格读取的方法(http://blog.csdn.net/kkfdsa132/archive/2010/03/14/5379815.aspx)相同,只是替换下红色字体。
替换如下:
//修改或添加数据
wSheet.Cells[ x, y] = "修改或添加数据";
//删除数据
wSheet.Cells[ x, y] = "";
//x, y 从1开始
原文转载地址:http://blog.csdn.net/kkfdsa132/article/details/5382730
- C# winform 开发之Excel操作(三)------Excel表格处理(增删改)和保存
- C# winform 开发之Excel操作(三)------Excel表格处理(增删改)和保存
- C# winform 开发之Excel操作(三)------Excel表格处理(增删改)和保存(续)
- C# winform 开发之Excel操作(二)------读取Excel表格 (续)
- C# winform 开发之Excel操作(二)------读取Excel表格
- C# winform 开发之Excel操作(四)------创建Excel表格
- C# winform 开发之Excel操作(二)------读取Excel表格
- C# winform 开发之Excel操作(四)------创建Excel表格
- C# winform 开发之Excel操作
- C#操作Excel数据增删改查
- c#操作excel全攻略(导入导出) excel表增删改 以及常见问题的处理
- C# winform 开发之Excel操作(一)------打开Exce表
- C# winform 开发之Excel操作(一)------打开Exce表
- C# winform 开发之Excel操作(一)------打开Exce表
- c#处理excel表格
- c#操作excel表格
- C# 操作Excel表格
- C# 操作Excel表格
- OK6410开发板开发环境搭建-NFS文件启动和使用dnw2烧写镜像文件
- Linux开启mysql远程连接的设置步骤
- 调试版程序OK,release版本却崩溃的原因
- [S3C6410学习心得之一]ok6410开发板基于Ubuntu9.10开发环境搭建-串口
- EOJ 2857 编辑距离 [2011年研究生机试 热身]
- C# winform 开发之Excel操作(三)------Excel表格处理(增删改)和保存
- 看到一位专注编程几乎40年的美国计算机科学家关于职业精神的回复后我几乎无语狼狈不堪
- kermit的安装、配置、使用
- 二维数组与指针
- android 调用C/C++的互相调用,以及DLL的调用。
- (转)函数调用约定--- __cdecl和__stdcal
- int 与 integer 区别?
- ubuntu下开发环境的搭建
- C# winform 开发之Excel操作(四)------创建Excel表格