[英]Save an excel file as values using C#
我有一個excel文件,其中包含公式。 公式使用一些需要第三方添加的函數。 我試圖使用C#中的以下代碼將excel文件保存為csv。 但公式字段顯示為錯誤。 如何將公式字段保存為值,然后將其保存在csv中。
public static void SaveExcelFileAsCsvAllSheets(string fileName)
{
var app = new Microsoft.Office.Interop.Excel.Application();
try
{
Microsoft.Office.Interop.Excel.Workbook wb = app.Workbooks.Open(fileName);
app.DisplayAlerts = false;
app.ScreenUpdating = false;
int sheetCount = 1;
foreach (Microsoft.Office.Interop.Excel.Worksheet sht in wb.Worksheets)
{
if (sht.Visible == XlSheetVisibility.xlSheetVisible)
{
sht.Select();
wb.SaveAs(Path.GetDirectoryName(fileName) + @"\" + Path.GetFileNameWithoutExtension(fileName) + "-" + sheetCount.ToString() + ".csv", Microsoft.Office.Interop.Excel.XlFileFormat.xlCSV, AccessMode: XlSaveAsAccessMode.xlNoChange);
sheetCount++;
}
}
wb.Close(false);
app.DisplayAlerts = true;
app.ScreenUpdating = true;
}
catch (Exception ex)
{
throw;
}
finally
{
app.Quit();
}
}
選擇包含數據的范圍,然后復制並粘貼值:
using Excel = Microsoft.Office.Interop.Excel;
Excel.Range targetRange = (Excel.Range)CurrentSheet.UsedRange;
targetRange.Copy(Type.Missing);
targetRange.Paste(Excel.XlPasteType.xlPasteValues,
Excel.XlPasteSpecialOperation.xlPasteSpecialOperationNone, false, false);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.