簡體   English   中英

使用C#中的savefiledialog類保存Excel文件

[英]Save excel file using savefiledialog class in C#

我需要創建並保存Excel文件,而無需在代碼中告知路徑和文件名。 因此,我可以使用savefile對話框顯示保存框以輸入路徑和文件名,但是我無法正確使用它。 我嘗試使用worksheet.saveas,但此類未顯示用於輸入路徑和文件名的保存框。 如何使用該保存框保存Excel文件?

它的基本機制是這樣的:

public void SaveExcelWorkBook()
{
   OpenFileDialog openDlg = new OpenFileDialog();
   openDlg.InitialDirectory = @"C:\";
   openDlg.ShowDialog();
   string path = openDlg.FileName;

   if (openDlg.ShowDialog() == DialogResult.OK)
   {
      try
      {
         Application excelApp = new Application();
         Workbook workBook = excelApp.Workbooks.Open(path);
         Worksheet workSheet = (Worksheet)workBook.Worksheets[1];

         // Do your work here inbetween the declaration of your workbook/worksheet  
         // and the save action below.

         workBook.SaveAs(/*path to save it to*/);  // NOTE: You can use 'Save()' or 'SaveAs()'
         workBook.Close(); 
      }

      catch (Exception ex)
      {
      }
   }
}

我想我還應該提到Interop對象是不受管理的,因此,您需要確保在調用.Close()之后釋放它們。 這是一個例子:

Marshal.ReleaseComObject(workBook);

這里這里都有兩個使用Excel的精彩教程。 祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM