新手小白用C# winform 讀取Excel表的實現

一、界面部分:

首先,打開visual studio新建項目;

然後使用“工具箱”添加控件:分別添加button,datagridview,textbox三種窗體;

所得到的界面圖如圖所示:(多加瞭幾個文本框)

二、代碼部分:

1、添加命名空間:

using System.Data.OleDb; //命名空間

2、添加類:

//根據excle的路徑把第一個sheel中的內容放入datatable
    public static DataTable ReadExcelToTable(string path)//excel存放的路徑
    {
      try
      {
 
        //連接字符串
        string connstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';"; // Office 07及以上版本 不能出現多餘的空格 而且分號註意
        //string connstring = Provider=Microsoft.JET.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';"; //Office 07以下版本 
        using (OleDbConnection conn = new OleDbConnection(connstring))
        {
          conn.Open();
          DataTable sheetsName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" }); //得到所有sheet的名字
          string firstSheetName = sheetsName.Rows[0][2].ToString(); //得到第一個sheet的名字
          string sql = string.Format("SELECT * FROM [{0}]", firstSheetName); //查詢字符串          //string sql = string.Format("SELECT * FROM [{0}] WHERE [日期] is not null", firstSheetName); //查詢字符串
          OleDbDataAdapter ada = new OleDbDataAdapter(sql, connstring);
          DataSet set = new DataSet();
          ada.Fill(set);
          return set.Tables[0];
        }
      }
      catch (Exception)
      {
        return null;
      }
 
    }

3、在button中添加調用代碼:

  private void button1_Click(object sender, EventArgs e)
    {
      string folder_path = this.textBox1.Text.Trim();
       dataGridView1.DataSource = null; //每次打開清空內容
       DataTable dt = ReadExcelToTable(folder_path);
      dataGridView1.DataSource = dt;  
 
    }

完畢!

點擊運行,然後輸入Excel文件的路徑,點擊button按鈕。(這裡的路徑:路徑+Excel文件名)

到此這篇關於新手小白用C# winform 讀取Excel表的實現的文章就介紹到這瞭,更多相關C# winform 讀取Excel內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: