繁体   English   中英

如何在 C# 中将数据写入现有 Excel 文档

[英]How to write data to an existing Excel doc in C#

我有一个需要每月更新的文档,并且我正在编写一个自动化来执行此操作。 这是我第一次尝试使用 C# 更新文档,而不是简单地创建一个新文档。 我已经研究并尝试实现了一些我在网上和 StackOverflow 上找到的库,例如 ClosedXML,但到目前为止我还没有运气。 我知道这个问题以前在这里被问过,所以我的实际问题是:我的实现不正确/我做错了什么?

public void WriteToReport(List<BrandData> brandData, string reportFilePath)
{            
    using (var workbook = new XLWorkbook(reportFilePath))
    {
        var worksheet = workbook(1);
        worksheet.Cell(26, 2).Value = "Hello World!";
        workbook.SaveAs(reportFilePath);                
    }
}

以上是到目前为止我尝试测试 ClosedXML 的方式。 GitHub 文档暗示它应该如此简单,但我没有看到自动化完成后对文档进行任何更改。 我也尝试过使用 Streamwriter。 如果有人可以帮助我使用 ClosedXML 或建议另一个对他们有用的库,将不胜感激。

编辑:按照此处对其他类似问题的解释,我已经尝试过:

public void WriteToReport(List<BrandData> brandData, string reportFilePath)
{
            var workbook = new XLWorkbook(reportFilePath);
            var worksheet = workbook.Worksheet(1);
            int numberOfLastColumn = 
            worksheet.LastColumnUsed().ColumnNumber();
            IXLCell newCell = worksheet.Cell(numberOfLastColumn + 1, 1);
            newCell.SetValue("Hello World");
            workbook.SaveAs(reportFilePath);                            
}

这是一个将字符串值写入第一个工作表的简单示例。

public void WriteToCell(string fileName, int row, int col, string value)
{
    using var workbook = new XLWorkbook(fileName);
    var worksheet = workbook.Worksheets.Worksheet(1);
    worksheet.Cell(row, col).Value = value;
    workbook.SaveAs(fileName);
}

暂无
暂无

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

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