C# 如何使用openxml和c在excel工作表中获取范围#

C# 如何使用openxml和c在excel工作表中获取范围#,c#,excel,c#-4.0,C#,Excel,C# 4.0,我必须阅读Excel(.xlsx)文件。我正在使用OpenXMLNuGetPKG。 我正在尝试获取范围(xlRange),以便从特定单元格获取数据。但是没有成功。此代码是在控制台环境中创建的 static void Main(string[] args) { bool flagDataError = false; string sDuplicateRows = string.Empty; string sCreatedRows = string.Empty;

我必须阅读Excel(.xlsx)文件。我正在使用OpenXMLNuGetPKG。 我正在尝试获取范围(
xlRange
),以便从特定单元格获取数据。但是没有成功。此代码是在控制台环境中创建的

static void Main(string[] args)
{    
    bool flagDataError = false;
    string sDuplicateRows = string.Empty;
    string sCreatedRows = string.Empty;
    string sFileTypeError = string.Empty;
    string filepath = @"C:\test.xlsx";
    var fileName = Path.GetFileName(filepath);
    var fileExtension = Path.GetExtension(filepath);
    if ((fileExtension != ".xlsx") && (fileExtension != ".xls"))
        sFileTypeError = "Invalid file. \n\nPlease browse a correct Excel file to upload.";
    else
    {          
        using (SpreadsheetDocument doc = SpreadsheetDocument.Open(filepath, false))
        {
            WorkbookPart workbookPart = doc.WorkbookPart;
            WorksheetPart worksheetPart = workbookPart.WorksheetParts.First();
            SheetData sheetData = worksheetPart.Worksheet.Elements<SheetData>().First();


            List<AxisData> data = new List<AxisData>();
            for (int i = 5; i <= 16; i++)
            {
                for (int j = 2; j <= 13; j++)
                {
                    AxisData axisDetails = new AxisData();
                    axisDetails.ProductCode = "AXIS " + xlRange.Cells[i, 1].Value;
                    axisDetails.ContractPeriod = Convert.ToDateTime(xlRange.Cells[4, j].Value);
                    axisDetails.SettlePrice = Convert.ToDecimal(xlRange.Cells[i, j].Value);
                    axisDetails.EffectiveStartDate = efectiveStartDate;
                }
                }
            }
        }
    }
}
}
static void Main(字符串[]args)
{    
bool flagDataError=false;
string sdupplicateRows=string.Empty;
string sCreatedRows=string.Empty;
string sFileTypeError=string.Empty;
字符串文件路径=@“C:\test.xlsx”;
var fileName=Path.GetFileName(filepath);
var fileExtension=Path.GetExtension(filepath);
if((文件扩展名!=“.xlsx”)&&(文件扩展名!=“.xls”))
sFileTypeError=“无效文件。\n\n请浏览要上载的正确Excel文件。”;
其他的
{          
使用(SpreadsheetDocument文档=SpreadsheetDocument.Open(文件路径,false))
{
WorkbookPart WorkbookPart=doc.WorkbookPart;
WorksheetPart WorksheetPart=workbookPart.WorksheetParts.First();
SheetData SheetData=worksheetPart.Worksheet.Elements().First();
列表数据=新列表();
对于(int i=5;i
IEnumerable ShRows=sheetData.Elements();
var_RCount=SHRows.Count();
您所说的“未获得成功”是什么意思?您是否遇到了错误?程序的运行方式是否与您所希望的不一样?请在描述您的问题时具体说明。此外,您提供的代码有不匹配的大括号。
IEnumerable<Row> ShRows = sheetData.Elements<Row>();

var _RCount = SHRows.Count();