private void btnImport_Click(object sender, EventArgs e) { System.Data.DataTable dt = new System.Data.DataTable("datable"); DataSet dsSource = new DataSet("dataSet"); dt.Reset(); Microsoft.Office.Interop.Excel.Workbook ExWorkbook; Microsoft.Office.Interop.Excel.Worksheet ExWorksheet; Microsoft.Office.Interop.Excel.Range ExRange; Microsoft.Office.Interop.Excel.Application Exobj = new Microsoft.Office.Interop.Excel.Application(); openFileDialog1.Filter = "Excel Files |*.xls;*.xlsx;*.xlsm"; DialogResult result = openFileDialog1.ShowDialog(); if (result == DialogResult.OK)//test result { ExWorkbook = Exobj.Workbooks.Open(openFileDialog1.FileName, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value); ExWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)ExWorkbook.Sheets.get_Item(1); ExRange = ExWorksheet.UsedRange; for (int Cnum = 1; Cnum <= ExRange.Columns.Count; Cnum++) { dt.Columns.Add(new DataColumn((ExRange.Cells[1, Cnum] as Microsoft.Office.Interop.Excel.Range).Value2.ToString())); } dt.AcceptChanges(); string[] columnNames = new string[dt.Columns.Count]; for (int i = 0; i < dt.Columns.Count; i++) { columnNames[0] = dt.Columns[i].ColumnName; } for (int Rnum = 2; Rnum <= ExRange.Rows.Count; Rnum++) { DataRow dr = dt.NewRow(); for (int Cnum = 1; Cnum <= ExRange.Columns.Count; Cnum++) { if ((ExRange.Cells[Rnum, Cnum] as Microsoft.Office.Interop.Excel.Range).Value2 != null) { dr[Cnum - 1] = (ExRange.Cells[Rnum, Cnum] as Microsoft.Office.Interop.Excel.Range).Value2.ToString(); } dt.Rows.Add(dr); dt.AcceptChanges(); } } ExWorkbook.Close(true, Missing.Value, Missing.Value); Exobj.Quit(); dataGridView1.DataSource = dt; } }
//Cette fonction créée le tableau de loi normal //à partir du tableau donnée par le prof // public void ImportTable() { System.Data.DataTable dt = new System.Data.DataTable("dataTable"); DataSet dsSource = new DataSet("dataSet"); dt.Reset(); Excel.Workbook ExWorkbook; Excel.Worksheet ExWorksheet; Excel.Range ExRange; Excel.Application ExObj = new Excel.Application(); ExWorkbook = ExObj.Workbooks.Open(System.IO.Directory.GetCurrentDirectory() + "\\table_normale.xlsx", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value); ExWorksheet = (Excel.Worksheet)ExWorkbook.Sheets.get_Item(1); ExRange = ExWorksheet.UsedRange; for (int Cnum = 1; Cnum <= ExRange.Columns.Count; Cnum++) { dt.Columns.Add(new DataColumn((ExRange.Cells[1, Cnum] as Excel.Range).Value2.ToString())); } dt.AcceptChanges(); for (int Rnum = 1; Rnum <= ExRange.Rows.Count; Rnum++) { DataRow dr = dt.NewRow(); for (int Cnum = 1; Cnum <= ExRange.Columns.Count; Cnum++) { if ((ExRange.Cells[Rnum, Cnum] as Excel.Range).Value2 != null) { dr[Cnum - 1] = (ExRange.Cells[Rnum, Cnum] as Excel.Range).Value2.ToString(); } } dt.Rows.Add(dr); dt.AcceptChanges(); } ExWorkbook.Close(true, Missing.Value, Missing.Value); ExObj.Quit(); DGV_Table.DataSource = dt; }
private void btnShow_Click(object sender, EventArgs e) { try { DataTable dt = new DataTable("dataTable"); dt.Reset(); Microsoft.Office.Interop.Excel.Workbook ExWorkbook; Microsoft.Office.Interop.Excel.Worksheet ExWorksheet; Microsoft.Office.Interop.Excel.Range ExRange; Microsoft.Office.Interop.Excel.Application ExObj = new Microsoft.Office.Interop.Excel.Application(); openFileDialog1.Filter = "Excel Files|*.xls;*.xlsx;*.xlsm"; DialogResult result = openFileDialog1.ShowDialog(); if (result == DialogResult.OK) // Test result. { Cursor.Current = Cursors.WaitCursor; txtPath.Text = openFileDialog1.FileName; ExWorkbook = ExObj.Workbooks.Open(txtPath.Text, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value); ExWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)ExWorkbook.Sheets.get_Item(1); ExRange = ExWorksheet.UsedRange; for (int Cnum = 1; Cnum <= ExRange.Columns.Count; Cnum++) { dt.Columns.Add(new DataColumn((ExRange.Cells[1, Cnum] as Microsoft.Office.Interop.Excel.Range).Value2.ToString())); } dt.AcceptChanges(); for (int Rnum = 2; Rnum <= ExRange.Rows.Count; Rnum++) { DataRow dr = dt.NewRow(); for (int Cnum = 1; Cnum <= ExRange.Columns.Count; Cnum++) { if ((ExRange.Cells[Rnum, Cnum] as Microsoft.Office.Interop.Excel.Range).Value2 != null) { dr[Cnum - 1] = (ExRange.Cells[Rnum, Cnum] as Microsoft.Office.Interop.Excel.Range).Value2.ToString(); } } dt.Rows.Add(dr); dt.AcceptChanges(); } ExWorkbook.Close(true, Missing.Value, Missing.Value); ExObj.Quit(); //System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName("Excel"); //foreach (System.Diagnostics.Process p in process) //{ // if (!string.IsNullOrEmpty(p.ProcessName)) // { // try // { // p.Kill(); // } // catch { } // } //} dataGridView1.DataSource = dt; Cursor.Current = Cursors.Default; } } catch (Exception ex) { MessageBox.Show(ex.Message); } }