主要是不太懂如何读取到Excel数据 ,求大神们制定
12 个解决方案
#1
搜NPIO,代码很多的
#2
http://www.csharpwin.com/csharpspace/6809r1243.shtml
http://www.cnblogs.com/tuyile006/archive/2006/10/25/395586.html
http://www.cnblogs.com/tuyile006/archive/2006/10/25/395586.html
#3
NPOI
#5
读取Excel数据到SQL Server数据库
private void timer1_Tick(object sender, EventArgs e)
{
string P_str_Name = "";//存储遍历到的Excel文件名
List<string> P_list_SheetNames = new List<string>();//实例化泛型集合对象,用来存储工作表名称
P_str_Name = txt_Path.Text;//记录遍历到的Excel文件名
P_list_SheetNames = GetSheetName(P_str_Name);//获取Excel文件中的所有工作表名
for (int j = 0; j < P_list_SheetNames.Count; j++)//遍历所有工作表
{
if (ckbox_Windows.Checked)//如果用Windows身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Initial Catalog =" + cbox_Server.Text + ";Integrated Security=SSPI;");//将工作表内容导出到Sql Server
else if (ckbox_SQL.Checked)//如果用Sql Server身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Database=" + cbox_Server.Text + ";Uid=" + txt_Name.Text + ";Pwd=" + txt_Pwd.Text + ";");//将工作表内容导出到Sql Server
}
System.Threading.Thread.Sleep(60000);//使线程休眠1分钟
}
private void timer1_Tick(object sender, EventArgs e)
{
string P_str_Name = "";//存储遍历到的Excel文件名
List<string> P_list_SheetNames = new List<string>();//实例化泛型集合对象,用来存储工作表名称
P_str_Name = txt_Path.Text;//记录遍历到的Excel文件名
P_list_SheetNames = GetSheetName(P_str_Name);//获取Excel文件中的所有工作表名
for (int j = 0; j < P_list_SheetNames.Count; j++)//遍历所有工作表
{
if (ckbox_Windows.Checked)//如果用Windows身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Initial Catalog =" + cbox_Server.Text + ";Integrated Security=SSPI;");//将工作表内容导出到Sql Server
else if (ckbox_SQL.Checked)//如果用Sql Server身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Database=" + cbox_Server.Text + ";Uid=" + txt_Name.Text + ";Pwd=" + txt_Pwd.Text + ";");//将工作表内容导出到Sql Server
}
System.Threading.Thread.Sleep(60000);//使线程休眠1分钟
}
#6
读取Excel数据基本上是可以写这样的代码:
var app = new Microsoft.Office.Interop.Excel.Application();
var wbk = app.Workbooks.Open(file);
var sht = (excel.Worksheet)wbk.Worksheets["环境评估表"];
var v1 = (string)sht.Range["D1"].Value2;
var v2 = (double)sht.Range["M2"].Value2;
Debug.Assert((string)sht.Range["A12"].Value2 == "mm");
Debug.Assert((string)sht.Range["A13"].Value2 == "pp");
var v3 = (object[,])sht.Range["A1:M13"].Value2;
app.DisplayAlerts = false;
wbk.Close();
app.Quit();
#7
有些所谓的“读取Excel表的代码返利”是根本不考虑“Excel格式”的,那种代码只能用于极其个别的情况。
如果不说明具体是什么情况次啊能那样读取,而就去写博客,纯粹是胡写。你读取那种博客的时候要注意。此时随便拿出一种常见的Excel例子来测试,例如用这个 Excel表来测试,你可以试试看能读出来什么?
如果不说明具体是什么情况次啊能那样读取,而就去写博客,纯粹是胡写。你读取那种博客的时候要注意。此时随便拿出一种常见的Excel例子来测试,例如用这个 Excel表来测试,你可以试试看能读出来什么?
#8
//读取excel数据到dataGridView1中
private void button1_Click(object sender, EventArgs e)
{
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Book222.xls;Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
OleDbConnection conn = new OleDbConnection(strConn);
string strExcel = "";
DataSet ds = new DataSet();
strExcel = "select * from [sheet1$]";
OleDbDataAdapter da = new OleDbDataAdapter(strExcel, strConn);
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
}
//更新数据库
private void button2_Click(object sender, EventArgs e)
{
DataTable dt = (DataTable)dataGridView1.DataSource;
update(dt);
}
//更新数据库
public void update(DataTable dt)
{
OleDbDataAdapter Ada = new OleDbDataAdapter();
String ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Windows.Forms.Application.StartupPath + "\\temp.mdb";
using (OleDbConnection connection = new OleDbConnection(ConnectionString))
{
Ada.SelectCommand = new OleDbCommand("SELECT * FROM 表", connection);
OleDbCommandBuilder builder = new OleDbCommandBuilder(Ada);
Ada.UpdateCommand = builder.GetUpdateCommand();
try
{
//更新数据表数据时
Ada.Update(dt);
dt.AcceptChanges();
}
catch { }
}
}
#9
LZ可以参阅这篇文章 ,使用
C# Excel控件导出Excel 数据到Datatable
http://www.e-iceblue.com/Knowledgebase/Spire.XLS/Program-Guide/Import-Data-from-Excel-to-DataTable.html
http://www.e-iceblue.com/Knowledgebase/Spire.XLS/Program-Guide/Import-Data-from-Excel-to-DataTable.html
#10
同意.
尤其EXCEL表里还有图片什么的,不是什么代码都能随便读的.
要看你到底想读什么东东,然后找合适的方法.
#11
呵呵
#12
这个可以用
#1
搜NPIO,代码很多的
#2
http://www.csharpwin.com/csharpspace/6809r1243.shtml
http://www.cnblogs.com/tuyile006/archive/2006/10/25/395586.html
http://www.cnblogs.com/tuyile006/archive/2006/10/25/395586.html
#3
NPOI
#4
#5
读取Excel数据到SQL Server数据库
private void timer1_Tick(object sender, EventArgs e)
{
string P_str_Name = "";//存储遍历到的Excel文件名
List<string> P_list_SheetNames = new List<string>();//实例化泛型集合对象,用来存储工作表名称
P_str_Name = txt_Path.Text;//记录遍历到的Excel文件名
P_list_SheetNames = GetSheetName(P_str_Name);//获取Excel文件中的所有工作表名
for (int j = 0; j < P_list_SheetNames.Count; j++)//遍历所有工作表
{
if (ckbox_Windows.Checked)//如果用Windows身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Initial Catalog =" + cbox_Server.Text + ";Integrated Security=SSPI;");//将工作表内容导出到Sql Server
else if (ckbox_SQL.Checked)//如果用Sql Server身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Database=" + cbox_Server.Text + ";Uid=" + txt_Name.Text + ";Pwd=" + txt_Pwd.Text + ";");//将工作表内容导出到Sql Server
}
System.Threading.Thread.Sleep(60000);//使线程休眠1分钟
}
private void timer1_Tick(object sender, EventArgs e)
{
string P_str_Name = "";//存储遍历到的Excel文件名
List<string> P_list_SheetNames = new List<string>();//实例化泛型集合对象,用来存储工作表名称
P_str_Name = txt_Path.Text;//记录遍历到的Excel文件名
P_list_SheetNames = GetSheetName(P_str_Name);//获取Excel文件中的所有工作表名
for (int j = 0; j < P_list_SheetNames.Count; j++)//遍历所有工作表
{
if (ckbox_Windows.Checked)//如果用Windows身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Initial Catalog =" + cbox_Server.Text + ";Integrated Security=SSPI;");//将工作表内容导出到Sql Server
else if (ckbox_SQL.Checked)//如果用Sql Server身份验证登录Sql Server
ImportDataToSql(P_str_Name, P_list_SheetNames[j], "Data Source=" + txt_Server.Text + ";Database=" + cbox_Server.Text + ";Uid=" + txt_Name.Text + ";Pwd=" + txt_Pwd.Text + ";");//将工作表内容导出到Sql Server
}
System.Threading.Thread.Sleep(60000);//使线程休眠1分钟
}
#6
读取Excel数据基本上是可以写这样的代码:
var app = new Microsoft.Office.Interop.Excel.Application();
var wbk = app.Workbooks.Open(file);
var sht = (excel.Worksheet)wbk.Worksheets["环境评估表"];
var v1 = (string)sht.Range["D1"].Value2;
var v2 = (double)sht.Range["M2"].Value2;
Debug.Assert((string)sht.Range["A12"].Value2 == "mm");
Debug.Assert((string)sht.Range["A13"].Value2 == "pp");
var v3 = (object[,])sht.Range["A1:M13"].Value2;
app.DisplayAlerts = false;
wbk.Close();
app.Quit();
#7
有些所谓的“读取Excel表的代码返利”是根本不考虑“Excel格式”的,那种代码只能用于极其个别的情况。
如果不说明具体是什么情况次啊能那样读取,而就去写博客,纯粹是胡写。你读取那种博客的时候要注意。此时随便拿出一种常见的Excel例子来测试,例如用这个 Excel表来测试,你可以试试看能读出来什么?
如果不说明具体是什么情况次啊能那样读取,而就去写博客,纯粹是胡写。你读取那种博客的时候要注意。此时随便拿出一种常见的Excel例子来测试,例如用这个 Excel表来测试,你可以试试看能读出来什么?
#8
//读取excel数据到dataGridView1中
private void button1_Click(object sender, EventArgs e)
{
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Book222.xls;Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
OleDbConnection conn = new OleDbConnection(strConn);
string strExcel = "";
DataSet ds = new DataSet();
strExcel = "select * from [sheet1$]";
OleDbDataAdapter da = new OleDbDataAdapter(strExcel, strConn);
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
}
//更新数据库
private void button2_Click(object sender, EventArgs e)
{
DataTable dt = (DataTable)dataGridView1.DataSource;
update(dt);
}
//更新数据库
public void update(DataTable dt)
{
OleDbDataAdapter Ada = new OleDbDataAdapter();
String ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Windows.Forms.Application.StartupPath + "\\temp.mdb";
using (OleDbConnection connection = new OleDbConnection(ConnectionString))
{
Ada.SelectCommand = new OleDbCommand("SELECT * FROM 表", connection);
OleDbCommandBuilder builder = new OleDbCommandBuilder(Ada);
Ada.UpdateCommand = builder.GetUpdateCommand();
try
{
//更新数据表数据时
Ada.Update(dt);
dt.AcceptChanges();
}
catch { }
}
}
#9
LZ可以参阅这篇文章 ,使用
C# Excel控件导出Excel 数据到Datatable
http://www.e-iceblue.com/Knowledgebase/Spire.XLS/Program-Guide/Import-Data-from-Excel-to-DataTable.html
http://www.e-iceblue.com/Knowledgebase/Spire.XLS/Program-Guide/Import-Data-from-Excel-to-DataTable.html
#10
同意.
尤其EXCEL表里还有图片什么的,不是什么代码都能随便读的.
要看你到底想读什么东东,然后找合适的方法.
#11
呵呵
#12
这个可以用