简体   繁体   English

如何使用C#将数据从Datagridview更新到Excel

[英]How to update data from datagridview into excel using c#

I read excel file into datagridview and hanlde it(add row,update values,etc..) and when it's finish i want to update all data(include old and new data) into old excel file. 我将excel文件读入datagridview并处理它(添加行,更新值等),完成后,我想将所有数据(包括旧数据和新数据)更新为旧excel文件。 Code below only update column"task" 下面的代码仅更新列“任务”

 OleDbConnection MyConnection = new OleDbConnection(connString);
        MyConnection.Open();
        myCommand.Connection = MyConnection;
        sql = "Update into [Associates_Loading_Details$] values ('" + dataGridView1["Task", dataGridView1.CurrentRow.Index].Value.ToString() + "')";
        myCommand.CommandText = sql;
            myCommand.ExecuteNonQuery();

1) Delete excel file 1)删除Excel文件

File.Delete(pathOfExcel);

2) Download new file with the same name from DataGridView 2)从DataGridView下载具有相同名称的新文件

    Microsoft.Office.Interop.Excel._Application app = new Microsoft.Office.Interop.Excel.Application();   
    Microsoft.Office.Interop.Excel._Workbook workbook = app.Workbooks.Add(Type.Missing);   
    Microsoft.Office.Interop.Excel._Worksheet worksheet = null;  
    app.Visible = true;    
    worksheet = workbook.Sheets["Sheet1"];  
    worksheet = workbook.ActiveSheet;  
    worksheet.Name = "Any Name";  
    for (int i = 1; i < dataGridView1.Columns.Count + 1; i++) {  
        worksheet.Cells[1, i] = dataGridView1.Columns[i - 1].HeaderText;  
    }   
    for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) {  
        for (int j = 0; j < dataGridView1.Columns.Count; j++) {  
            worksheet.Cells[i + 2, j + 1] = dataGridView1.Rows[i].Cells[j].Value.ToString();  
        }  
    }  
    workbook.SaveAs(excelPath, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing); 
    app.Quit(); 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM