说明:一个excel表格式如下:
学号 姓名 语文 数学 英语 这是一个表格形式的
要求:
可以录入excel表格内容,不及格的成绩做标示,对重复学号的数据进行筛选,遗漏的学号补充录入。导入不影响UI线程。
可计算各个学号的总成绩,可以根据学号顺序,各分科、总成绩排名导出。
图表形式显示出各分数区间段的人员分布情况。
学号 姓名 语文 数学 英语 这是一个表格形式的
要求:
可以录入excel表格内容,不及格的成绩做标示,对重复学号的数据进行筛选,遗漏的学号补充录入。导入不影响UI线程。
可计算各个学号的总成绩,可以根据学号顺序,各分科、总成绩排名导出。
图表形式显示出各分数区间段的人员分布情况。
DataGridView 的列名,点击能够实现排序的,不用你重写任何东西
参考
http://www.csharpwin.com/csharpspace/1111.shtml
http://www.knowsky.com/540655.html
{
int a = Convert.ToInt32(dataGridView1.RowCount.ToString()) - 1; for (int i = 0; i < a; i++)
{ string a1 = Convert.ToString(dataGridView1[1, i].Value);
string a2 = Convert.ToString(dataGridView1[2, i].Value);
string a3 = Convert.ToString(dataGridView1[3, i].Value);
string a4 = Convert.ToString(dataGridView1[4, i].Value);
string a5 = Convert.ToString(dataGridView1[5, i].Value);
string sql1 = string.Format("insert into 表名(学号 ,姓名, 语文, 数学 ,英语) values('" + a1 + "','" + a2 + "','" + a3 + "','" + a4 + "','" + a5 + "'"); SqlCommand cmd = new SqlCommand(sql1, theconnection);
cmd.ExecuteNonQuery();
cmd.Dispose(); }
MessageBox.Show("导入成功 ", "提示", MessageBoxButtons.OK);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString(), "提示"); }
代码是:
string dizhi = textBox1.Text.ToString();
string file = textBox2.Text.ToString();
string cnstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dizhi + ";Extended Properties=\"text;HDR=Yes;FMT=Delimited\";"; OleDbConnection cn = new OleDbConnection(cnstring);
string aSQL = "select * from " + file + "";
cn.Open();
OleDbDataAdapter da = new OleDbDataAdapter(aSQL, cn);
DataTable dt = new DataTable();
da.Fill(dt);
cn.Close();
dataGridView1.DataSource = dt;
/// <summary>
/// 取得OleDb方式Excel连接串
/// </summary>
/// <param name="strExcelFilePath"></param>
/// <returns></returns>
public static string GetExcelConnectionString(string strExcelFilePath)
{
return string.Format("Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source={0};Extended Properties=Excel 8.0;",strExcelFilePath);
}
/// <summary>
/// Excel文档导入DataTable
/// </summary>
/// <param name="strExcelFilePath">文件名称</param>
/// <param name="strSheetNum">Sheet号</param>
/// <returns></returns>
public static DataTable ImportFromExcel(string strExcelFilePath,string strSheetNum)
{
try
{
DataTable dt = new DataTable("BT");
using(OleDbConnection Connection = new OleDbConnection(GetExcelConnectionString(strExcelFilePath)))
{
Connection.Open();
using(OleDbDataAdapter da = new OleDbDataAdapter(string.Format("Select * From [Sheet{0}$]",strSheetNum),Connection))
{
da.Fill(dt);
}
}
return dt;
}
catch(Exception me)
{
throw new Exception("导入Excel文档失败!" + me.Message);
}
}