EPLUS OpenXML 행 수를 가져오는 방법(c#)
검색해보니 링크 C#EPLus OpenXML 카운트 행이 있었습니다.
int iRowCount = currentWorksheet.Dimension.End.Row - currentWorksheet.Dimension.Start.Row;
그러나 이것은 카운트 값으로 4721을 제공합니다.전체 행 수를 제공합니다. 값이 있는 행 수를 어떻게 얻을 수 있습니까?Used Range 같은 거.
시트의 사용된 범위(치수)의 행 및 열 수를 반환하는 실제 답변은 다음과 같습니다.
int iColCnt = Worksheet.Dimension.End.Column
int iRowCnt = Worksheet.Dimension.End.Row
그러나 워크시트가 있는지 여부를 검정해야 합니다.새 워크시트 또는 빈 워크시트의 경우 치수 속성이 null이므로 치수가 null입니다.
또한 "공백"의 정의는 각 경우에 매우 구체적인 것이기 때문에 일반적인 기능을 갖는 것은 어려울 것입니다.가장 의미가 있는 유일한 방법은 모든 값이 비어 있다는 것입니다.하지만 Blank와 Nothing은 그 자체로 정말 다릅니다.(예: 셀에 설명이 있을 수 있으며 특정 사례에서 행이 공백으로 간주되지 않을 정도로 충분히 고려될 수 있습니다.
워크시트의 끝을 찾으려면 해당 스타일의 예로 Peter Reisz 답변을 참조하십시오.
워크시트의 빈 셀에는 여전히 형식이 포함되어 있어 치수 시트에서 셀 수 있습니다.
빈 셀은 다음 단계를 사용하여 지울 수 있습니다. http://office.microsoft.com/en-au/excel-help/locate-and-reset-the-last-cell-on-a-worksheet-HA010218871.aspx
텍스트가 포함된 마지막 행을 얻기 위해 이 함수를 작성했습니다.
int GetLastUsedRow(ExcelWorksheet sheet) {
if (sheet.Dimension == null) { return 0; } // In case of a blank sheet
var row = sheet.Dimension.End.Row;
while(row >= 1) {
var range = sheet.Cells[row, 1, row, sheet.Dimension.End.Column];
if(range.Any(c => !string.IsNullOrEmpty(c.Text))) {
break;
}
row--;
}
return row;
}
또 다른 방법입니다.
var lastRow = sheet.Cells.Where(cell => !string.IsNullOrEmpty(cell.Value?.ToString() ?? string.Empty)).LastOrDefault().End.Row;
Where 메서드를 사용하여 값이 없는 셀을 가져오는 방법이 있습니다.워크시트 또는 범위에서 마지막 셀(이 경우 행)을 찾는 데 사용할 수 있습니다.
int lastRow = sheet.Cells.Where(cell => !cell.Value.ToString().Equals("")).Last().End.Row;
Where 방법 정보: https://msdn.microsoft.com/en-us/library/bb534803(v=vs.110).aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-1
언급URL : https://stackoverflow.com/questions/8400315/how-to-get-epplus-openxml-row-count-c
'source' 카테고리의 다른 글
import http = required ";와 import *를 'http'에서 http로 import " 사이의 차이;? (0) | 2023.06.14 |
---|---|
기본값을 사용하여 bash에서 변수 읽기 (0) | 2023.06.14 |
(다른 플랫폼에서) NDEBUG 전처리기 매크로는 무엇에 사용됩니까? (0) | 2023.06.14 |
유형 스크립트에서 문자열 변수를 문자열 리터럴 유형으로 캐스트하는 방법 (0) | 2023.06.14 |
연속된 각 시퀀스에 대한 그룹 번호 생성 (0) | 2023.06.14 |