Экспорт файла перезаписан

Я сейчас пользуюсь Microsoft.Office.Core; а также using Excel = Microsoft.Office.Interop.Excel; экспортировать мои данные из формы Windows, чтобы преуспеть.

Когда я экспортирую свой файл, он всегда перезаписывается.

Кто-нибудь знает способ ее решения?

xlWorkBook.SaveAs("d:\\csharp-Excel.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();

System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkSheet);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkBook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);

MessageBox.Show("Excel file created , you can find the file d:\\csharp-Excel.xls");

1 ответ

Вы могли бы сначала проверить, существует ли имя файла, который вы хотите, уже существует и прикрепить DateTime в конце, если так. Также '@' перед путем дает вам возможность набрать ваш путь, как в проводнике (без двойного '\'):

string MyExportFile = "csharp-Excel";
string FullPath = @"d:\";

if (File.Exists(Path.Combine(FullPath, MyExportFile)))
{
     MyExportFile += DateTime.Now + ".xls";
     FullPath += MyExportFile;
}

xlWorkBook.SaveAs(FullPath, 
    Excel.XlFileFormat.xlWorkbookNormal, 
    misValue, misValue, misValue, misValue, 
    Excel.XlSaveAsAccessMode.xlExclusive, 
    misValue, misValue, misValue, misValue, misValue);

  xlWorkBook.Close(true, misValue, misValue);
  xlApp.Quit();
Другие вопросы по тегам