簡體   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