C#做的一個在vs2010中匯入Excel表格的功能
一:練習時發現問題 在vs除錯的時候一遍一遍輸入資料十分的麻煩,資料多的話每除錯一次就要輸入一次資料,十分的浪費時間,所以做成一個小功能可以將資料直接匯入,節省時間。
二:過程 1.插入一個dataGridview 控制元件
2.插入並設定MenuStrip控制元件並設定屬性
效果圖如下:
3.準備一個Excel表格
4.執行程式,,匯入vs2010中。
三:程式程式碼:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 凱哥
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
}
private void 資料匯入ToolStripMenuItem_Click(object sender, EventArgs e)
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void excel檔案ToolStripMenuItem_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = null;
dataGridView1.Rows.Clear();
dataGridView1.Columns.Clear();
OpenFileDialog file = new OpenFileDialog();
file.Filter = "Excel檔案|*.xls|Excel檔案|*.xlsx";
if (file.ShowDialog() == DialogResult.OK)
{
string fname = file.FileName;
string strSource = @"provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + fname + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'";
OleDbConnection conn = new OleDbConnection(strSource);
string sqlstring = @"SELECT * FROM [Sheet1$]";
OleDbDataAdapter adapter = new OleDbDataAdapter(sqlstring, conn);
DataSet da = new DataSet();
adapter.Fill(da);
dataGridView1.DataSource = da.Tables[0];
}
else
{ return; }
}
}
}
四:執行結果:
原Excel表格

匯入後效果:
後續 :執行剛開始出現如下截圖錯誤,但被我成功解決
哈哈機智如我