如何使用 OpenXML 获取 Excel 工作表的使用范围?
How can I get an Excel worksheet's used range with OpenXML?
我需要在新工作表中获取已使用的单元格区域。例如:
A1:AY55
在ExcelVBA中,这可以通过恰当命名的UsedRange
属性获得。 OpenXML 中是否有等效项?
它可以在 SheetDimension
class 中找到,它可以作为 Worksheet
的 属性 找到。以下代码将使用的范围写入控制台:
using (SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Open(filename, false))
{
WorkbookPart workbookPart = spreadsheetDocument.WorkbookPart;
//get the correct sheet
Sheet sheet = workbookPart.Workbook.Descendants<Sheet>().Where(s => s.Name == "Sheet1").First();
WorksheetPart worksheetPart = workbookPart.GetPartById(sheet.Id) as WorksheetPart;
Console.WriteLine(worksheetPart.Worksheet.SheetDimension.Reference);
}
我需要在新工作表中获取已使用的单元格区域。例如:
A1:AY55
在ExcelVBA中,这可以通过恰当命名的UsedRange
属性获得。 OpenXML 中是否有等效项?
它可以在 SheetDimension
class 中找到,它可以作为 Worksheet
的 属性 找到。以下代码将使用的范围写入控制台:
using (SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Open(filename, false))
{
WorkbookPart workbookPart = spreadsheetDocument.WorkbookPart;
//get the correct sheet
Sheet sheet = workbookPart.Workbook.Descendants<Sheet>().Where(s => s.Name == "Sheet1").First();
WorksheetPart worksheetPart = workbookPart.GetPartById(sheet.Id) as WorksheetPart;
Console.WriteLine(worksheetPart.Worksheet.SheetDimension.Reference);
}