2017-10-03 4 views
1

Documentformat.openxml nuget pkg를 사용하여 .xlsx 파일을 읽습니다. 나는 날짜 셀을 읽기 위해 노력하고 있어요 [G2] 및 데이터 [B5]을 [M5]openxml을 사용하여 Excel 파일의 셀 데이터를 읽는 방법

Sample excel screenshot is attached 난 당신이 당신이 할 수있는 세포에 의해 행 단위로 다음 셀을 가고 싶어

static void Main(string[] args) 
     { 
      string sFileTypeError = string.Empty; 
      string myFilePath = @"C:\Landing\file.xlsx"; 
      //string ext = Path.GetExtension(myFilePath); 

      var fileName = Path.GetFileName(myFilePath); 
      var fileExtension = Path.GetExtension(fileName); 
      if ((fileExtension != ".xlsx") && (fileExtension != ".xls")) 
       sFileTypeError = "Invalid file. \n\nPlease browse a correct Excel file to upload."; 
      else 
      { 

       using (SpreadsheetDocument doc = SpreadsheetDocument.Open(myFilePath, false)) 
       { 
        IEnumerable<Sheet> sheets = doc.WorkbookPart.Workbook.GetFirstChild<DocumentFormat.OpenXml.Spreadsheet.Sheets>().Elements<Sheet>(); 
        WorksheetPart worksheetPart = (WorksheetPart)doc.WorkbookPart.GetPartById(sheets.First().Id.Value); 
        IEnumerable<Row> rows = worksheetPart.Worksheet.GetFirstChild<SheetData>().Descendants<Row>(); 

       } 

      } 
     } 

Please let me know how can read this. Thanks 

답변

1

:

foreach (Row actualRow in rows) 
{ 
    IEnumerable<Cell> cells = actualRow.Descendants<Cell>(); 
    foreach (Cell actualCell in cells) 
    { 
     // It gets the good value if it's not in the shared string table 
     string value = actualCell.CellValue.Text; 
    } 
}