2016-06-18 9 views
1

특정 열에 대해 마지막으로 사용한 행의 수를 얻으려고했지만 점유 된 최대 행 수만 가져올 수있었습니다. 테스트 데이터는 첨부 된 스냅에 표시됩니다. 도와주세요. Snap Attached HereGembox는 특정 열의 모든 행 (공백 포함) 수를 계산합니다.

 SpreadsheetInfo.SetLicense("FREE-LIMITED-KEY"); 
     ExcelFile ef = ExcelFile.Load("test.xlsx"); 

     CellRange rcount = ef.Worksheets[0].Columns[1].Cells; 
     Console.WriteLine(ef.Worksheets[0].Rows.Count); 


     ef.Save("test.xlsx"); 
     Console.ReadKey(); 

답변

1

셀은 내부적으로 행이 아니라 열에 할당됩니다. 즉, 각 행에 대해 마지막으로 사용한 열을 ExcelRow.AllocatedCells.Count으로 가져올 수 있습니다.

특정 열에서 마지막으로 사용 된 행을 얻기 위해 당신은 다음과 같은 것을 사용할 수 있습니다

ExcelFile ef = ExcelFile.Load("test.xlsx"); 
ExcelWorksheet ws = ef.Worksheets[0]; 

ExcelColumn column = ws.Columns[1]; 
int rowIndex = ws.Rows.Count - 1; 

while (rowIndex >= 0 && column.Cells[rowIndex].ValueType == CellValueType.Null) 
    --rowIndex; 

Console.WriteLine(rowIndex); 

도움이 되었기를 바랍니다.

+1

감사합니다 백만 1 – user3289968