简体   繁体   English

将Excel文件另存为只读(Interop.Excel)C#

[英]Saving Excel File as Read Only (Interop.Excel) C#

All, 所有,

I have the below code which opens a specified excel file deletes the first row and then saves it as a specified CSV. 我有下面的代码,打开指定的excel文件,删除第一行,然后将其另存为指定的CSV。

However when it saves the CSV down it saves it in a read-only format. 但是,当将CSV文件保存下来时,它会以只读格式保存。 Can anyone advise how I would ensure the file is not saved down in read only format. 任何人都可以建议我如何确保文件不会以只读格式保存下来。

EDIT I have tried; 我尝试过的编辑 To set the ReadOnly property to false. 将ReadOnly属性设置为false。

I also am aware two instances of Excel may be opening which may cause the read only status from googling previous posts however including myApp.Quit() I believe it would close all instances of excel. 我也知道Excel的两个实例可能正在打开,这可能会导致谷歌搜索以前的帖子引起只读状态,但是包括myApp.Quit()我相信它将关闭所有excel实例。

        public void DeleteRows(string OriginalFileName,String NewFileName)
    {
        Microsoft.Office.Interop.Excel.Application myApp;
        Microsoft.Office.Interop.Excel.Workbook myWorkBook;
        Microsoft.Office.Interop.Excel.Worksheet myWorkSheet;
        Microsoft.Office.Interop.Excel.Range range;
        myApp = new Microsoft.Office.Interop.Excel.Application();
        myWorkBook = myApp.Workbooks.Open(OriginalFileName, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
        myWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)myWorkBook.Worksheets.get_Item(1);
        range = (Microsoft.Office.Interop.Excel.Range)myWorkSheet.Application.Rows[1, Type.Missing];
        range.Select();
        range.Delete(Microsoft.Office.Interop.Excel.XlDirection.xlUp);
        myApp.DisplayAlerts = false;
        myWorkSheet.SaveAs(NewFileName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookDefault, Type.Missing, Type.Missing, true, false, XlSaveAsAccessMode.xlNoChange, XlSaveConflictResolution.xlLocalSessionChanges, Type.Missing, Type.Missing);
        myWorkBook.Close(true);
        myApp.Quit();
    }
}
}

保存excel文件时,尝试将ReadOnlyRecommended设置为false。

The solution was to change myWorkBook.Close(true); 解决方案是更改myWorkBook.Close(true); to myWorkBook.Close(false); myWorkBook.Close(false);

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

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