當它已經打開時是否可以關閉excel文件?我已經編寫了一個代碼,可以確定某個特定的excel文件是否已經打開,但是一旦它被確定爲打開,我無法關閉該文件。我曾嘗試以下方法(見下文),關閉工作簿和Excel應用程序:如何在已經打開的時候自動關閉特定的excel文件(不殺死excel)?
// The name of my workbook is "workbook", while the Excel application is named "excel."
workbook.Close(true); excel.Quit();
執行後的代碼不會關閉已打開的Excel窗口。這也可能有助於知道我使用,以確定文件是否打開(這是下面提供)代碼:
// The following checks to see if a file is open and returns truth1 as "true" if the file is open and "false" if the file is closed.
file = new FileInfo(file_name);
truth1 = IsFileinUse(file);
// ...
protected static bool IsFileinUse(FileInfo file)
{
FileStream stream = null;
try
{
stream = file.Open(FileMode.Open, FileAccess.ReadWrite, FileShare.None);
}
catch (IOException)
{
return true;
}
finally
{
if (stream != null)
stream.Close();
}
return false;
}
同樣,我不能創建一個程序中,我「殺創先爭優」。我只需要知道如何關閉已打開的Excel窗口,如果它的路徑與我正在嘗試讀取和寫入的路徑相同。
你已經試過這個嗎? http://stackoverflow.com/questions/22971269/closing-an-open-excel-workbook-in-c-sharp –
.close()命令不關閉已打開的文件;這就是我在這個主題上找到的所有解決方案(包括剛推薦的解決方案)中主要關注的內容。 –
[關閉Excel工作簿]的可能重複(http://stackoverflow.com/questions/17440138/closing-an-excel-workbook) –