sourcecode

C# - Excel의 모든 행을 반복하는 방법._워크시트?

codebag 2023. 4. 28. 20:33
반응형

C# - Excel의 모든 행을 반복하는 방법._워크시트?

Excel 워크시트에서 데이터를 프로그래밍 방식으로 가져와서 데이터베이스 테이블에 삽입하려고 합니다.

워크시트의 열과 행 수를 결정하거나 행을 반복하려면 어떻게 해야 합니까?

있습니다

Excel._Worksheet worksheet = (Excel._Worksheet)workbook.ActiveSheet;

나는 노력했다.worksheet.Range.Rows.Count

엎치락뒤치락하는

인덱스 속성 'Microsoft.사무실. 인터럽트.Excel._워크시트.'범위'에 제공해야 하는 옵션이 아닌 인수가 있습니다.

무엇을 해야 합니까?

using Excel = Microsoft.Office.Interop.Excel;
...

public void IterateRows(Excel.Worksheet worksheet)
{
    //Get the used Range
    Excel.Range usedRange = worksheet.UsedRange;
    
    //Iterate the rows in the used range
    foreach(Excel.Range row in usedRange.Rows)
    {
        //Do something with the row.
    
        //Ex. Iterate through the row's data and put in a string array
        String[] rowData = new String[row.Columns.Count];
        
        for(int i = 0; i < row.Columns.Count; i++)
            rowData[i] =Convert.ToString(row.Cells[1, i + 1].Value2);
    }
}

이것은 나에게 아주 잘 컴파일되고 실행됩니다!필드가 누락된 행을 오류 로그에 추출하는 데 사용합니다.

실제로 마지막으로 사용한 행을 찾고 있는 것 같습니다.이 경우 다음과 같이 작성해야 합니다.

Range UsedRange = worksheet.UsedRange;
int lastUsedRow = UsedRange.Row + UsedRange.Rows.Count - 1;

언급URL : https://stackoverflow.com/questions/7727738/c-sharp-how-do-i-iterate-all-the-rows-in-excel-worksheet

반응형