나는 작업을 얻었다. 다음은 호기심 많은 사람들을위한 코드입니다.
public static void findingTableBounds()
{
for (int column = 1; column < currentRow; column++)
{
double? dateCol;
dateCol = ((Excel.Range)workSheet.Cells[currentRow, 1]).Value2;
if (dateCol == null)
{
Console.WriteLine("Total Row: {0}", totalRow);
currentRow = 2;
}
else
{
currentRow++;
totalRow++;
}
}
for (int row = 1; row < currentCol; row++)
{
double? headerRow;
headerRow = ((Excel.Range)workSheet.Cells[1, currentCol]).Value2;
if (headerRow == null)
{
Console.WriteLine("Total Column: {0}", totalCol);
currentCol = 2;
}
else
{
currentCol++;
totalCol++;
}
}
}
참고는 I는 2 CurrentRow와 동일 currentCol했다 그래서 I의 치수를 발견하면 테이블에서 값을 읽기 시작할 수있다. 그렇게하는 것이 전적으로 필요하지는 않지만 다른 변수를 쉽게 사용할 수 있지만 나중에이 변수를 사용하기로 결정했습니다.
업데이트 다른 코더의 도움으로 VB의 코드가 자동으로 테이블의 마지막 행을 찾습니다. 코드는 다음과 같습니다 : 이것에 대한 VB에서 방법이 얼마나보고
Dim totalRow As Integer
totalRow = Range("A1").End(xlDown).Row
, 그것은 같은 일을 할 수있는 C#에서 방법이있을 수 있습니다처럼 느끼게 ... 나는 단지 그들이 무엇인지 모르겠어요 . 어쨌든 "End"메서드는 왼쪽, 위 및 오른쪽 경계를 찾는 데에도 사용할 수 있습니다. Row 메서드는 Excel의 커서가 현재 행을 추출하는 것처럼 보입니다. 여기서는 커서가 Excel의 마지막 행으로 이동합니다. 끝 방법)
제시
Excel 파일을 읽고 처리하는 데 사용하는 툴킷/라이브러리는 무엇입니까? 귀하의 질문에 무엇을 제안해야하는지에 대한 정보가 충분하지 않습니다. interop을 사용하는 경우 시트 객체에 .Rows.Count/.Columns.Count를 사용하면됩니다. –