web-dev-qa-db-ja.com

メッセージなしで既存のExcelファイルを保存/上書きする方法

ビューリストからExcelをエクスポートする必要があります。このコードを使用しました

Excel.Application app = new Excel.Application();
            //app.Visible = true;
            Excel.Workbook wb = app.Workbooks.Add(1);
            Excel.Worksheet ws = (Excel.Worksheet)wb.Worksheets[1];

            int i = 1;
            int i2 = 1;
            foreach (ListViewItem lvi in lvLogs.Items)
            {
                i = 1;
                foreach (ListViewItem.ListViewSubItem lvs in lvi.SubItems)
                {
                    ws.Cells[i2, i] = lvs.Text;
                    i++;
                }
                i2++;
            }


            wb.SaveAs(@"C:\1\myExcel.xls", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing,
                        Type.Missing, Type.Missing);
            wb.Close(false, Type.Missing, Type.Missing);

            app.Quit();

        }

次に、メッセージなしでExcelファイルを上書きする必要があり、このアクションを10分ごとに実行する必要があります。

20
didodido

これを試してください。

       app.DisplayAlerts = false;
        wb.SaveAs(@"C:\1\myExcel.xls", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing,
                    Type.Missing, Type.Missing);
        workbook.Close();
        app.Quit();        
28
USER87