如何使用 MS Office 的 .NET 包装器知道 Excel 文件单元格计数

How to know Excel file cells count using .NET wrapper for MS Office

在我的程序中,我使用 .NET wrapper for MS Office 将 Excel 文件读入二维数组。 它适用于以下代码:

public static object[,] OpenExcelFileToArray(string filename, string start, string end, int sheetNumber = 1)
{
    using (var app = MSExcel.Application.CreateApplication())
    {
        var book = app.Workbooks.Open(filename);
        var sheet = (MSExcel.Worksheet)book.Worksheets[1];
        var range = sheet.GetRange(start, end);

        return (object[,]) range.Value2;
    }
}

在这个方法中,我发送 string startstring end 作为参数(例如 start = "A1"end = "Z10"。 它仅在我已经知道 Excel 内容 table 的大小时才有效。 但是,如果我不知道 Excel 文件的最后一个单元格怎么办? 这可以使用 .NET wrapper for MS Office 解决吗? 我在他们的网站上没有找到所需的信息。

我想,Worksheet.UsedRange 属性 就是您要找的。 我不确定 MS Office Wrapper for .NET 是否提供它。 Microsoft 的 Office 官方 .Net 包装器是 VSTO,它支持此 属性: https://msdn.microsoft.com/en-us/library/bb608603.aspx