C#에서 Excel 파일을 가져오는 방법

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXL은 C# 개발자가 단 한 줄의 코드로 Excel 데이터를 가져올 수 있게 해주며, XLSX, CSV 및 기타 포맷을 지원합니다. Interop 종속성이 없으며 즉각적인 셀, 범위 및 워크시트 액세스를 허용하여 데이터 조작이 가능합니다.

빠른 시작: Excel 파일을 즉시 로드하기

IronXL의 타임아웃 없는 API를 사용하는 단 한 번의 메서드 호출로 지원되는 Excel 시트(XLSX, CSV 등)를 몇 초 안에 로드할 수 있습니다. Interop 필요 없음, 번거로움 없음. 필요에 따라 셀, 범위 또는 시트에 액세스하여 즉시 워크북과 상호 작용을 시작하세요.

  1. NuGet 패키지 관리자를 사용하여 https://www.nuget.org/packages/IronXl.Excel 설치하기

    PM > Install-Package IronXl.Excel
  2. 다음 코드 조각을 복사하여 실행하세요.

    WorkBook wb = IronXl.WorkBook.Load("path/to/data.xlsx");
  3. 실제 운영 환경에서 테스트할 수 있도록 배포하세요.

    무료 체험판으로 오늘 프로젝트에서 IronXL 사용 시작하기

    arrow pointer
## Excel 데이터 C# 가져오기
  • IronXL 라이브러리를 사용하여 데이터 가져오기
  • C#에서 Excel 데이터 가져오기
  • 특정 셀 범위의 데이터 가져오기
  • SUM, AVG, MIN, MAX 등을 포함한 집계 함수로 Excel 데이터 가져오기
How To Work related to C#에서 Excel 파일을 가져오는 방법

1단계

IronXL 라이브러리 설치

IronXL은 Excel 가져오기를 쉽게 만들어 줍니다

이 튜토리얼에서 사용할 IronXL Excel 라이브러리가 제공하는 기능을 사용하여 데이터를 가져옵니다. 해당 소프트웨어는 개발을 위해 무료로 제공됩니다. IronXL은 Microsoft Office나 Interop 종속성 없이 Excel 파일 작업을 단순화하는 포괄적인 C# Excel API를 제공합니다. 이는 서버 환경 및 클라우드 배포에 이상적입니다.

설치 방법

DLL 다운로드를 통해 C# 프로젝트에 설치하거나 NuGet 패키지 사용하여 탐색합니다. 설치에 대한 자세한 안내는 시작 개요를 확인하세요.

Install-Package IronXl.Excel

튜토리얼 사용법

프로젝트에서 WorkSheet에 액세스하기

기본 WorkBook 로딩 프로세스

오늘의 프로젝트 필요에 따라, IronXL 소프트웨어를 사용하여 Excel 데이터를 C# 애플리케이션에 가져올 것입니다. 이 라이브러리는 다양한 Excel 포맷을 지원하고 스프레드시트를 로드하는 직관적인 메서드를 제공합니다.

2단계에서는 IronXL의 WorkBook.Load() 함수를 사용하여 우리의 CSharp 프로젝트에 Excel WorkBook을 로드합니다. 이 함수에서 Excel WorkBook의 경로를 문자열 매개변수로 전달합니다.

// Load Excel file
WorkBook wb = WorkBook.Load("Path");
// Load Excel file
WorkBook wb = WorkBook.Load("Path");
$vbLabelText   $csharpLabel

지정된 경로에 있는 Excel 파일이 wb에 로드될 것입니다. 이 메서드는 XLSX, XLS, CSV, TSV 및 기타 일반적인 스프레드시트 포맷을 지원합니다.

특정 WorkSheet에 액세스하기

다음으로 프로젝트에 가져올 Excel 파일의 특정 WorkSheet에 액세스해야 합니다. 이 목적으로, 우리는 IronXL의 GetWorkSheet() 함수를 사용할 수 있으며, 가져올 WorkBook의 시트를 지정하기 위해 시트 이름을 문자열 매개변수로 전달합니다. 워크시트를 관리하는 방법에 대한 포괄적인 가이드를 통해 더 알아보세요.

// Specify sheet name of Excel WorkBook
WorkSheet ws = wb.GetWorkSheet("SheetName");
// Specify sheet name of Excel WorkBook
WorkSheet ws = wb.GetWorkSheet("SheetName");
$vbLabelText   $csharpLabel

WorkSheet는 ws로 가져오게 되며, wb는 위의 코드 샘플에서 정의한 WorkBook입니다.

워크시트를 액세스하기 위한 대체 방법

프로젝트에 Excel 워크시트를 가져오기 위한 다음과 같은 대체 방법이 존재합니다. 각 방법은 특정 사용 사례에 따라 유연성을 제공합니다:

// Import WorkSheet by various methods

// by sheet indexing
WorkSheet mySheet = wb.WorkSheets[SheetIndex];

// get default WorkSheet
WorkSheet defaultSheet = wb.DefaultWorkSheet;

// get first WorkSheet
WorkSheet firstSheet = wb.WorkSheets.First();

// for the first or default sheet
WorkSheet firstOrDefaultSheet = wb.WorkSheets.FirstOrDefault();
// Import WorkSheet by various methods

// by sheet indexing
WorkSheet mySheet = wb.WorkSheets[SheetIndex];

// get default WorkSheet
WorkSheet defaultSheet = wb.DefaultWorkSheet;

// get first WorkSheet
WorkSheet firstSheet = wb.WorkSheets.First();

// for the first or default sheet
WorkSheet firstOrDefaultSheet = wb.WorkSheets.FirstOrDefault();
$vbLabelText   $csharpLabel

이제 지정된 Excel 파일에서 모든 유형의 데이터를 손쉽게 가져올 수 있습니다. 우리 프로젝트에서 Excel 파일 데이터를 가져오기 위한 모든 가능한 측면을 탐구합시다.


C#에서 Excel 데이터 가져오기

기본 셀 가져오기 방법

이것은 우리 프로젝트로 Excel 파일 데이터를 가져오는 기본 측면입니다. IronXL은 다양한 시나리오에 유연하도록 여러 가지 방법으로 셀 데이터를 액세스할 수 있게 합니다.

이 목적을 위해 우리는 가져올 셀 데이터를 지정하기 위해 셀 주소 지정 시스템을 사용할 수 있습니다. 이는 Excel 파일에서 특정 셀 주소의 값을 반환합니다:

var cellValue = ws["Cell Address"];
var cellValue = ws["Cell Address"];
$vbLabelText   $csharpLabel

행 및 열 인덱스를 사용하여 데이터 가져오기

또한, 행 및 열 인덱스를 사용하여 Excel 파일에서 셀 데이터를 가져올 수 있습니다. 이 코드 라인은 지정된 행 및 열 인덱스의 값을 반환합니다. 이 접근 방식은 프로그래밍적으로 데이터를 반복할 때 특히 유용합니다:

var cellValueByIndex = ws.Rows[RowIndex].Columns[ColumnIndex];
var cellValueByIndex = ws.Rows[RowIndex].Columns[ColumnIndex];
$vbLabelText   $csharpLabel

가져온 값을 변수에 저장하기

가져온 셀 값을 변수에 할당하려면 이 코드를 사용합니다. ToString() 메서드는 문자열 변수와의 호환성을 보장하지만, 필요에 따라 다른 유형으로 캐스팅할 수도 있습니다:

// Import Data by Cell Address
// by cell addressing
string val = ws["Cell Address"].ToString();

// by row and column indexing
string valWithIndexing = ws.Rows[RowIndex].Columns[ColumnIndex].Value.ToString();

// for numeric values
decimal numericValue = ws["B2"].DecimalValue;

// for date values
DateTime dateValue = ws["C2"].DateTimeValue;
// Import Data by Cell Address
// by cell addressing
string val = ws["Cell Address"].ToString();

// by row and column indexing
string valWithIndexing = ws.Rows[RowIndex].Columns[ColumnIndex].Value.ToString();

// for numeric values
decimal numericValue = ws["B2"].DecimalValue;

// for date values
DateTime dateValue = ws["C2"].DateTimeValue;
$vbLabelText   $csharpLabel

위의 예에서는 행 및 열 인덱스가 0에서 시작합니다. 더 고급 셀 작업을 위해, 셀 지우기셀 복사에 대한 안내서를 탐구해 보세요.


특정 범위에서 데이터 가져오기

범위 함수 구문

To import data in a specific range from an Excel WorkBook, use the range function. 시작 및 끝 셀 주소를 설명하여 범위를 정의하세요. 이는 지정된 범위 내의 모든 셀 값을 반환합니다. 포괄적인 범위 선택 기술에 대해서는 우리 범위 선택 안내서를 참조하세요.

var rangeData = ws["Starting Cell Address:Ending Cell Address"];
var rangeData = ws["Starting Cell Address:Ending Cell Address"];
$vbLabelText   $csharpLabel

완전한 범위 가져오기 예제

Excel 파일에서 범위 작업에 대한 자세한 정보를 얻고, 데이터를 가져오는 다양한 방법에 대해 더 알아보세요. 다음 예제는 개별 셀 값 및 범위를 가져오는 방법을 보여줍니다:

:path=/static-assets/excel/content-code-examples/how-to/csharp-import-excel-import.cs
using IronXL;
using System;

// Import Excel WorkBook
WorkBook wb = WorkBook.Load("sample.xlsx");

// Specify WorkSheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");

// Import data of specific cell
string val = ws["A4"].Value.ToString();
Console.WriteLine("Import Value of A4 Cell address: {0}", val);

Console.WriteLine("import Values in Range From B3 To B9 :\n");

// Import data in specific range
foreach (var item in ws["B3:B9"])
{
    Console.WriteLine(item.Value.ToString());
}

Console.ReadKey();
$vbLabelText   $csharpLabel

위의 코드는 다음 출력을 표시합니다:

콘솔 출력이 Excel 범위 B3:B9 가져오기 결과와 중간 마켓 가치 및 독일, 멕시코, 캐나다를 포함한 국가 목록을 보여줍니다

With the values of Excel file sample.xlsx as:

파란색으로 강조 표시된 셀을 보여주는 판매 데이터가 있는 Excel 스프레드시트는 가져오기 과정 중 범위 선택을 위해 사용됩니다

집계 함수를 사용하여 Excel 데이터 가져오기

사용 가능한 집계 함수

Excel 파일에 집계 함수를 적용하고 이러한 함수로부터 결과 데이터를 가져옵니다. IronXL은 데이터를 분석하기 쉽게 만들어주는 내장 수학 함수를 제공합니다. 다음은 다양한 함수와 그 사용 예입니다:

  • Sum()

    // To find the sum of a specific cell range
    var sum = ws["Starting Cell Address:Ending Cell Address"].Sum();
    // To find the sum of a specific cell range
    var sum = ws["Starting Cell Address:Ending Cell Address"].Sum();
    $vbLabelText   $csharpLabel
  • Average()

    // To find the average of a specific cell range
    var average = ws["Starting Cell Address:Ending Cell Address"].Avg();
    // To find the average of a specific cell range
    var average = ws["Starting Cell Address:Ending Cell Address"].Avg();
    $vbLabelText   $csharpLabel
  • Min()

    // To find the minimum in a specific cell range
    var minimum = ws["Starting Cell Address:Ending Cell Address"].Min();
    // To find the minimum in a specific cell range
    var minimum = ws["Starting Cell Address:Ending Cell Address"].Min();
    $vbLabelText   $csharpLabel
  • Max()

    // To find the maximum in a specific cell range
    var maximum = ws["Starting Cell Address:Ending Cell Address"].Max();
    // To find the maximum in a specific cell range
    var maximum = ws["Starting Cell Address:Ending Cell Address"].Max();
    $vbLabelText   $csharpLabel

여러 집계 함수를 함께 사용하기

Excel에서 C#을 사용하는 집계 함수에 대해 더 읽어보고 데이터를 가져오는 여러 방법에 대해 더 알아보세요. 이러한 함수는 요약 통계를 생성하거나 가져온 데이터를 검증하는 데 특히 유용합니다.

이러한 함수를 적용하여 Excel 파일 데이터를 가져오는 예제를 참조하세요:

:path=/static-assets/excel/content-code-examples/how-to/csharp-import-excel-math-functions.cs
using IronXL;
using System;

// Import Excel file
WorkBook wb = WorkBook.Load("sample.xlsx");

// Specify WorkSheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");

// Import Excel file data by applying aggregate functions
decimal sum = ws["D2:D9"].Sum();
decimal avg = ws["D2:D9"].Avg();
decimal min = ws["D2:D9"].Min();
decimal max = ws["D2:D9"].Max();

Console.WriteLine("Sum From D2 To D9: {0}", sum);
Console.WriteLine("Avg From D2 To D9: {0}", avg);
Console.WriteLine("Min From D2 To D9: {0}", min);
Console.WriteLine("Max From D2 To D9: {0}", max);

Console.ReadKey();
$vbLabelText   $csharpLabel

위 코드는 다음 출력을 제공합니다:

콘솔 출력이 Excel 집계 함수를 보여줍니다: 합계=452, 평균=56.5, 최솟값=5, 최대값=350, 범위 D2에서 D9까지

그리고 우리의 파일 sample.xlsx에는 다음 값들이 포함되어 있습니다:

판매 데이터가 있는 Excel 스프레드시트는 집계 함수 분석을 위한 값이 포함된 강조 표시된 판매 가격 열을 보여줍니다

완전한 Excel 파일 데이터 가져오기

ToDataSet 메서드

C# 프로젝트로 완전한 Excel 파일 데이터를 가져오기 위해, 먼저 로드한 워크북을 DataSet으로 구문 분석하세요. 이 방법으로, 완전한 Excel 데이터는 DataSet에 가져오고, Excel 파일 내 워크시트는 해당 DataSet 내의 DataTable이 됩니다. 이 접근 방식은 데이터베이스 작업이나 데이터 바인딩 컨트롤을 사용할 때 특히 유용합니다. DataSet으로 가져오고 내보내기에 대해 더 알아보세요.

// Import WorkBook into DataSet
DataSet ds = wb.ToDataSet();
// Import WorkBook into DataSet
DataSet ds = wb.ToDataSet();
$vbLabelText   $csharpLabel

지정된 워크시트를 데이터셋으로 가져와 요구사항에 따라 사용할 수 있습니다. 이 방법은 여러 시트를 동시에 작업하거나 Excel 데이터를 ADO.NET 작업과 통합할 때 특히 강력합니다.

열 헤더 처리

종종 Excel 파일의 첫 번째 행은 열 이름 역할을 합니다. 이 경우, 첫 번째 행을 DataTable 열 이름으로 만드십시오. IronXL의 ToDataSet() 함수의 불리언 매개변수를 다음과 같이 설정하십시오:

// Import WorkBook into DataSet with first row as ColumnNames
DataSet ds = wb.ToDataSet(true);
// Import WorkBook into DataSet with first row as ColumnNames
DataSet ds = wb.ToDataSet(true);
$vbLabelText   $csharpLabel

이로 인해 Excel 파일의 첫 번째 행이 DataTable 열 이름이 되어, 구조화된 Excel 데이터를 작업할 때 데이터 구조의 무결성을 유지하는 데 필수적입니다.

전체 데이터셋 가져오기 예제

Excel 데이터를 데이터셋으로 가져와 Excel 워크시트의 첫 번째 행을 DataTable 열 이름으로 사용하는 완전한 예를 참조하십시오:

:path=/static-assets/excel/content-code-examples/how-to/csharp-import-excel-dataset.cs
using IronXL;
using System;
using System.Data;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");

// Import Excel data into a DataSet
DataSet ds = wb.ToDataSet(true);

Console.WriteLine("Excel file data imported to dataset successfully.");
Console.ReadKey();
$vbLabelText   $csharpLabel

Excel 데이터셋 및 DataTable 함수와 작업하는 것은 복잡할 수 있지만, 파일 데이터를 C# 프로젝트에 통합하기 위한 더 많은 예시가 제공됩니다. 고급 시나리오에서는 DataTable을 통한 Excel에서 SQL로의 변환 및 SQL 데이터베이스에서 Excel을 로드하는 것에 대한 가이드를 탐색하십시오.


라이브러리 바로가기

### IronXL 참조를 탐색하십시오

IronXL의 전체 문서 API 참조에서 셀, 범위, 데이터셋 및 데이터테이블을 통해 Excel 데이터를 가져오는 방법에 대해 더 알아보십시오.

IronXL 참조를 탐색하십시오
Documentation related to 라이브러리 바로가기

자주 묻는 질문

Microsoft Office를 사용하지 않고 C#에서 Excel 파일을 가져오는 방법은 무엇인가요?

IronXL을 사용하면 Microsoft Office 또는 Interop 종속성 없이 C#에서 Excel 파일을 가져올 수 있습니다. WorkBook.Load() 메서드에 파일 경로를 지정하여 다음과 같이 사용하면 됩니다. WorkBook wb = WorkBook.Load("path/to/data.xlsx"). 이 방법은 XLSX, XLS, CSV, TSV 및 기타 형식의 파일과 호환됩니다.

이 C# 라이브러리로 어떤 Excel 파일 형식을 가져올 수 있나요?

IronXL은 XLSX, XLS, CSV, TSV 및 기타 일반적인 스프레드시트 형식을 포함한 다양한 Excel 형식을 가져오기 지원합니다. WorkBook.Load() 메서드는 이러한 모든 형식을 자동으로 처리합니다.

엑셀 데이터를 서버나 클라우드 환경으로 가져오는 것이 가능할까요?

네, IronXL은 Microsoft Office나 Interop 종속성이 필요하지 않기 때문에 서버 환경 및 클라우드 배포에 이상적입니다. 따라서 웹 애플리케이션, Azure Functions 및 기타 서버 측 시나리오에 매우 적합합니다.

데이터를 가져온 후 얼마나 빨리 엑셀 작업을 시작할 수 있나요?

IronXL의 타임아웃 없는 API를 사용하면 단 한 줄의 코드로 지원되는 모든 Excel 시트를 몇 초 만에 불러올 수 있습니다. WorkBook.Load()를 사용한 후에는 셀, 범위 또는 워크시트와 즉시 상호 작용할 수 있습니다.

엑셀 파일에서 특정 셀 범위를 가져올 수 있나요?

네, IronXL을 사용하면 통합 문서를 불러온 후 특정 셀 범위에서 데이터를 가져올 수 있습니다. 제공되는 직관적인 API를 사용하여 개별 셀, 범위 또는 전체 워크시트에 액세스할 수 있습니다.

C#용 Excel 가져오기 라이브러리를 어떻게 설치하나요?

IronXL은 NuGet 패키지 관리자를 통해 설치하거나 DLL 파일을 직접 다운로드하여 설치할 수 있습니다. 이 라이브러리는 개발 목적으로 무료로 사용할 수 있으며, 시작하는 데 필요한 자세한 설명서를 제공합니다.

커티스 차우
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/ready_to_started_202509.php
Line: 12
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 489
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/ready_to_started_202509.php
Line: 19
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 489
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

시작할 준비 되셨나요?
Nuget 다운로드 1,890,100 | 버전: 2026.3 방금 출시되었습니다

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/still_scrolling_202512.php
Line: 17
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 71
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Notice

Message: Undefined index: IronXl.Excel

Filename: helpers/counter_helper.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/helpers/counter_helper.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/views/main/sections/still_scrolling_202512.php
Line: 24
Function: getTotalDonwloadNumber

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 71
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

Still Scrolling Icon

아직도 스크롤하고 계신가요?

빠른 증거를 원하시나요? PM > Install-Package IronXl.Excel
샘플을 실행하세요 데이터가 스프레드시트로 변환되는 것을 지켜보세요.