如果我使用Office Open XML了解其内容(xlsx文档中没有重复项),如何定位Cell?
我的意思是我有xlsx工作表(模板),并在其中的某处放置了我的“变量”。例如“<< _time>>”。我想找到那个元素(通过“变量”名称)并更改单元格值(在这种情况下是当前时间)。
基本代码:
FileInfo newFile = new FileInfo(@"...");
FileInfo template = new FileInfo(@"...");
using (ExcelPackage xlPackage = new ExcelPackage(newFile, template))
{
ExcelWorksheet worksheet = xlPackage.Workbook.Worksheets.First();
//need target Cell by it's value (must use for-loop?)
//worksheet.Cells[...].Value = "...";
xlPackage.Save();
}
答案 0 :(得分:0)
好的,我通过经典循环解决了它。
var start = worksheet.Dimension.Start;
var end = worksheet.Dimension.End;
for (int row = start.Row; row <= end.Row; row++)
{
for (int col = start.Column; col <= end.Column; col++)
{
string cellValue = worksheet.Cells[row, col].Text.ToString();
if (cellValue == "<<_time>>")
{
worksheet.Cells[row, col].Value = "..";
}
}
}