C# 使用EPPlus向电子表格发出写入命令

C# 使用EPPlus向电子表格发出写入命令,c#,epplus,C#,Epplus,我只是试图编辑一个已经写入文本的电子表格,将文本改为空白 但是它不起作用。这种方法似乎毫无用处 我的代码是: public static void ClearCells(string SpreadsheetFilePath) { var SpreadsheetPath = new FileInfo(SpreadsheetFilePath); var package = new ExcelPackage(SpreadsheetPath); ExcelWorkbook wor

我只是试图编辑一个已经写入文本的电子表格,将文本改为空白

但是它不起作用。这种方法似乎毫无用处

我的代码是:

public static void ClearCells(string SpreadsheetFilePath)
{
    var SpreadsheetPath = new FileInfo(SpreadsheetFilePath);
    var package = new ExcelPackage(SpreadsheetPath);
    ExcelWorkbook workBook = package.Workbook;
    if (workBook != null)
    {
        if (workBook.Worksheets.Count > 0)
        {
            ExcelWorksheet currentWorksheet = workBook.Worksheets.First();
            currentWorksheet.SetValue(1, 1, "hello123");
        }
    }
}

没有运行时错误。它运行、完成并且电子表格保持不变。我不知道为什么。

SetCellValue
代替
SetValue
怎么样

public static void ClearCells(string SpreadsheetFilePath)
{

var SpreadsheetPath = new FileInfo(SpreadsheetFilePath);
var package = new ExcelPackage(SpreadsheetPath);
ExcelWorkbook workBook = package.Workbook;
if (workBook != null)
{
    if (workBook.Worksheets.Count > 0)
    {
        ExcelWorksheet currentWorksheet = workBook.Worksheets.First();
        currentWorksheet.SetCellValue(1, 1, "hello123");
    }
}
}

试着这样做:

public static void ClearCells(string SpreadsheetFilePath)
{
    var excelFile = new FileInfo(SpreadsheetFilePath);
    var excelPack = ExcelPackage(excelFile);

    var workSheet = excelPack.Workbook.Worksheets.Add("Content"); // New worksheet           
    workSheet.Cells[1, 1].Value = "hello123";

    excelPack.Save();
}

只需调用
package.Save()编辑完文件后

var SpreadsheetPath = new FileInfo(@"C:\temp\abc.xlsx");
var package = new ExcelPackage(SpreadsheetPath);
ExcelWorkbook workBook = package.Workbook;
if (workBook != null)
{
    if (workBook.Worksheets.Count > 0)
    {
        ExcelWorksheet currentWorksheet = workBook.Worksheets.First();
        currentWorksheet.SetValue(1, 1, "hello123");
    }
}

package.Save();  // <========= MISSING IN YOUR CODE
var SpreadsheetPath=newfileinfo(@“C:\temp\abc.xlsx”);
var包=新的ExcelPackage(电子表格路径);
Excel工作簿=package.工作簿;
如果(工作簿!=null)
{
如果(workBook.Worksheets.Count>0)
{
ExcelWorksheet currentWorksheet=workBook.Worksheets.First();
currentWorksheet.SetValue(1,1,“hello123”);
}
}

package.Save();//似乎
SetCellValue()
在EPpLus版本3.1.3.0中不可用。您正在使用哪个版本?您正在使用哪个版本的EPPlus库?