IronXL 사용하여 C#에서 Excel 데이터를 가져오는 방법
Microsoft Excel 파일 작업은 많은 .NET 개발자에게 일상적인 요구 사항입니다. 고객 데이터를 가져오거나, 금융 보고서를 처리하거나, 스프레드시트에서 데이터베이스로 데이터를 이동할 때, 개발자는 복잡한 종속성 없이 또는 Excel을 설치할 필요 없이 Excel 파일을 읽을 수 있는 신뢰할 수 있는 방법이 필요합니다. Microsoft.Office.Interop을 통한 COM 자동화와 같은 전통적인 접근 방식은 전체 Office 설치를 필요로 하고, 플랫폼 제약을 도입하며, 취약한 배포 종속성을 만듭니다. IronXL은 플랫폼에 관계없이 작동하는 간단한 솔루션을 제공하여 모든 문제를 제거하고 관리되는 .NET 코드에서 직접 Excel 작업을 가능하게 합니다.
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 1 - IronXL
IronXL을 설치하고 Excel 가져오기를 시작하는 방법은?
IronXL을 사용하여 C#에서 Excel 가져오기를 시작하는 데 몇 분밖에 걸리지 않습니다. 이 Excel 라이브러리는 기존 XLS 및 최신 XLSX 형식뿐만 아니라 CSV, TSV 및 기타 스프레드시트 형식도 모두 처리합니다. IronXL은 Microsoft.Office.Interop.Excel에 의존하는 솔루션과는 달리, 어떤 .NET 또는 .NET Core 플랫폼에서든 독립적으로 실행됩니다.
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 2 - 크로스 플랫폼
IronXL을 NuGet 패키지 관리자 또는 .NET CLI를 통해 설치하십시오. Visual Studio에서 NuGet 패키지 관리 대화 상자를 사용하여 "IronXL"을 검색할 수도 있습니다:
Install-Package IronXL
dotnet add package IronXL
Install-Package IronXL
dotnet add package IronXL
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 3 - 설치
버전 호환성 및 종속성 정보를 포함한 전체 설치 세부 정보는 IronXL NuGet 설치 가이드를 참조하십시오. 추가 런타임 종속성이나 Office 구성 요소가 필요하지 않습니다. 패키지는 자체 포함되어 있습니다. 패키지를 설치한 후에는 Excel 데이터를 가져오는 것이 간단합니다:
using IronXL;
// Load any Excel file
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
// Access the first worksheet
WorkSheet sheet = workBook.WorkSheets[0];
// Read a cell value
string value = sheet["B1"].StringValue;
Console.WriteLine(value);
using IronXL;
// Load any Excel file
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
// Access the first worksheet
WorkSheet sheet = workBook.WorkSheets[0];
// Read a cell value
string value = sheet["B1"].StringValue;
Console.WriteLine(value);
Imports IronXL
' Load any Excel file
Dim workBook As WorkBook = WorkBook.Load("ProductData.xlsx")
' Access the first worksheet
Dim sheet As WorkSheet = workBook.WorkSheets(0)
' Read a cell value
Dim value As String = sheet("B1").StringValue
Console.WriteLine(value)
이 코드는 기본적인 워크플로우를 보여줍니다: 워크북을 로드하고, 워크시트를 접근하며, 셀 값을 읽습니다. WorkBook.Load() 방식은 XLS, XLSX, CSV 등 파일 형식을 자동으로 감지합니다. 직관적인 인덱서 구문 sheet["B1"]은 배열 작업처럼 자연스럽게 셀에 액세스할 수 있게 해줍니다. 사용 가능한 멤버 및 오버로드에 대한 전체 참조는 IronXL API 문서를 참조하세요.
샘플 입력
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 4 - Excel 입력
산출
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 5 - 콘솔 출력
Excel 데이터를 C# 객체로 읽는 방법은 무엇인가요?
실제 애플리케이션은 단일 셀 값 이상을 필요로 합니다. IronXL은 전체 데이터 세트를 가져와 사용 가능한 C# 객체로 변환하는 데 뛰어납니다. 구조화된 Excel 데이터를 가져와야 할 경우, 이 라이브러리는 도메인 모델에 직접 매핑되는 다양한 접근 방식을 제공합니다.
아래 예는 워크시트의 행을 읽고 각 행을 입력된 Product 개체에 매핑하는 예제입니다:
using IronXL;
// Load the Excel file
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Map rows to typed objects
var products = new List<Product>();
foreach (var row in sheet.Rows)
{
var product = new Product
{
Id = row.Columns[0].IntValue,
Name = row.Columns[1].StringValue,
Price = row.Columns[2].DecimalValue,
IsAvailable = row.Columns[3].BoolValue
};
products.Add(product);
}
foreach (var product in products)
{
Console.WriteLine(
$"Id: {product.Id}, Name: {product.Name}, " +
$"Price: {product.Price}, Available: {product.IsAvailable}"
);
}
using IronXL;
// Load the Excel file
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Map rows to typed objects
var products = new List<Product>();
foreach (var row in sheet.Rows)
{
var product = new Product
{
Id = row.Columns[0].IntValue,
Name = row.Columns[1].StringValue,
Price = row.Columns[2].DecimalValue,
IsAvailable = row.Columns[3].BoolValue
};
products.Add(product);
}
foreach (var product in products)
{
Console.WriteLine(
$"Id: {product.Id}, Name: {product.Name}, " +
$"Price: {product.Price}, Available: {product.IsAvailable}"
);
}
Imports IronXL
' Load the Excel file
Dim workBook As WorkBook = WorkBook.Load("ProductData.xlsx")
Dim sheet As WorkSheet = workBook.DefaultWorkSheet
' Map rows to typed objects
Dim products As New List(Of Product)()
For Each row In sheet.Rows
Dim product As New Product With {
.Id = row.Columns(0).IntValue,
.Name = row.Columns(1).StringValue,
.Price = row.Columns(2).DecimalValue,
.IsAvailable = row.Columns(3).BoolValue
}
products.Add(product)
Next
For Each product In products
Console.WriteLine(
$"Id: {product.Id}, Name: {product.Name}, " &
$"Price: {product.Price}, Available: {product.IsAvailable}"
)
Next
IntValue, StringValue, DecimalValue, BoolValue의 유형 속성은 유형 변환을 자동으로 처리합니다. 이 접근법은 수동 구문 분석을 제거하고 혼합 데이터 유형의 열을 처리할 때 오류를 줄여줍니다. Stack Overflow의 많은 개발자들이 Excel 데이터 가져오기에 대해 이 타입 안전한 접근법을 높이 평가합니다.
산출
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 6 - 개체 출력
셀 범위와 LINQ를 어떻게 작업하나요?
IronXL은 내장된 LINQ 호환성을 통해 집계 계산 및 필터링된 쿼리에 대해 범위 작업을 지원합니다:
using IronXL;
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Read a named cell range
Range dataRange = sheet["A1:D5"];
// Calculate aggregates directly on a range
decimal sum = sheet["C1:C5"].Sum();
Console.WriteLine($"Sum of C1:C5: {sum}");
decimal max = sheet["C1:C5"].Max(c => c.DecimalValue);
Console.WriteLine($"Max of C1:C5: {max}");
// Filter using LINQ
var highValueOrders = dataRange
.Where(cell => cell.DecimalValue > 100)
.Select(cell => cell.Value)
.ToList();
Console.WriteLine("Orders above 100:");
foreach (var order in highValueOrders)
{
Console.WriteLine(order);
}
using IronXL;
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Read a named cell range
Range dataRange = sheet["A1:D5"];
// Calculate aggregates directly on a range
decimal sum = sheet["C1:C5"].Sum();
Console.WriteLine($"Sum of C1:C5: {sum}");
decimal max = sheet["C1:C5"].Max(c => c.DecimalValue);
Console.WriteLine($"Max of C1:C5: {max}");
// Filter using LINQ
var highValueOrders = dataRange
.Where(cell => cell.DecimalValue > 100)
.Select(cell => cell.Value)
.ToList();
Console.WriteLine("Orders above 100:");
foreach (var order in highValueOrders)
{
Console.WriteLine(order);
}
Imports IronXL
Dim workBook As WorkBook = WorkBook.Load("ProductData.xlsx")
Dim sheet As WorkSheet = workBook.DefaultWorkSheet
' Read a named cell range
Dim dataRange As Range = sheet("A1:D5")
' Calculate aggregates directly on a range
Dim sum As Decimal = sheet("C1:C5").Sum()
Console.WriteLine($"Sum of C1:C5: {sum}")
Dim max As Decimal = sheet("C1:C5").Max(Function(c) c.DecimalValue)
Console.WriteLine($"Max of C1:C5: {max}")
' Filter using LINQ
Dim highValueOrders = dataRange _
.Where(Function(cell) cell.DecimalValue > 100) _
.Select(Function(cell) cell.Value) _
.ToList()
Console.WriteLine("Orders above 100:")
For Each order In highValueOrders
Console.WriteLine(order)
Next
코드-55344--@@ 클래스는 여러 셀에 동시에 컬렉션과 같은 액세스를 제공합니다. LINQ 호환성은 중간 컬렉션으로 먼저 변환하지 않고도 익숙한 C# 패턴을 사용하여 Excel 데이터를 필터링, 변환 및 집계할 수 있음을 의미합니다. 코드-55345--@@ 및 @@--코드-55346--@@와 같은 기본 제공 집계 메서드는 셀 범위에서 직접 작동합니다. 통합 문서 데이터 읽기에 대한 자세한 내용은 IronXL Excel 파일 읽기 가이드를 참조하십시오.
산출
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 7 - 범위 출력
Excel을 C#의 DataTable로 변환하는 방법은?
DataTable 변환은 데이터베이스 작업 및 데이터 바인딩 시나리오에 필수적입니다. IronXL Excel 데이터를 DataSet 또는 DataTable로 변환하는 내장 메서드를 제공합니다. 이 기능은 Excel 스프레드시트를 SQL Server 또는 다른 관계형 데이터베이스에 가져와야 할 때 특히 유용합니다. 결과 개체는 표준 System.Data.DataTable이므로 데이터 액세스 계층을 변경할 필요 없이 모든 ADO.NET 호환 코드 경로에서 작동합니다.
using IronXL;
using System.Data;
using System.Data.SqlClient;
// Load Excel file
WorkBook workBook = WorkBook.Load("inventory.xlsx");
// Select the first worksheet
WorkSheet sheet = workBook.WorkSheets.First();
// Convert to DataTable -- first row becomes column headers
DataTable dataTable = sheet.ToDataTable(true);
// Use SqlBulkCopy to insert directly into SQL Server
string connectionString = "Data Source=.;Initial Catalog=InventoryDB;Integrated Security=True;";
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connectionString))
{
bulkCopy.DestinationTableName = "Inventory";
bulkCopy.WriteToServer(dataTable);
}
using IronXL;
using System.Data;
using System.Data.SqlClient;
// Load Excel file
WorkBook workBook = WorkBook.Load("inventory.xlsx");
// Select the first worksheet
WorkSheet sheet = workBook.WorkSheets.First();
// Convert to DataTable -- first row becomes column headers
DataTable dataTable = sheet.ToDataTable(true);
// Use SqlBulkCopy to insert directly into SQL Server
string connectionString = "Data Source=.;Initial Catalog=InventoryDB;Integrated Security=True;";
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connectionString))
{
bulkCopy.DestinationTableName = "Inventory";
bulkCopy.WriteToServer(dataTable);
}
Imports IronXL
Imports System.Data
Imports System.Data.SqlClient
' Load Excel file
Dim workBook As WorkBook = WorkBook.Load("inventory.xlsx")
' Select the first worksheet
Dim sheet As WorkSheet = workBook.WorkSheets.First()
' Convert to DataTable -- first row becomes column headers
Dim dataTable As DataTable = sheet.ToDataTable(True)
' Use SqlBulkCopy to insert directly into SQL Server
Dim connectionString As String = "Data Source=.;Initial Catalog=InventoryDB;Integrated Security=True;"
Using bulkCopy As New SqlBulkCopy(connectionString)
bulkCopy.DestinationTableName = "Inventory"
bulkCopy.WriteToServer(dataTable)
End Using
ToDataTable() 메서드는 첫 번째 행에 헤더가 포함되어 있는지 여부를 나타내는 부울 매개 변수를 허용합니다. true로 설정하면 IronXL은 자동으로 첫 번째 행 값을 열 이름으로 사용합니다. 결과 DataTable은 ADO.NET, Entity Framework 및 데이터 바인딩 컨트롤과 추가 설정 없이 통합됩니다.
변환 과정에 대한 더 많은 제어를 원하면 DataTable을 수동으로 빌드할 수 있습니다:
using IronXL;
using System.Data;
WorkBook workBook = WorkBook.Load("inventory.xlsx");
WorkSheet sheet = workBook.WorkSheets.First();
// Build DataTable manually for custom column types or validation
DataTable customTable = new DataTable();
for (int col = 0; col < sheet.ColumnCount; col++)
{
customTable.Columns.Add($"Column{col + 1}", typeof(string));
}
foreach (var row in sheet.Rows)
{
var dataRow = customTable.NewRow();
for (int col = 0; col < sheet.ColumnCount; col++)
{
dataRow[col] = row.Columns[col].Value ?? DBNull.Value;
}
customTable.Rows.Add(dataRow);
}
// Print headers
foreach (DataColumn column in customTable.Columns)
{
Console.Write($"{column.ColumnName}\t");
}
Console.WriteLine();
// Print data rows
foreach (DataRow row in customTable.Rows)
{
foreach (var item in row.ItemArray)
{
Console.Write($"{item}\t");
}
Console.WriteLine();
}
using IronXL;
using System.Data;
WorkBook workBook = WorkBook.Load("inventory.xlsx");
WorkSheet sheet = workBook.WorkSheets.First();
// Build DataTable manually for custom column types or validation
DataTable customTable = new DataTable();
for (int col = 0; col < sheet.ColumnCount; col++)
{
customTable.Columns.Add($"Column{col + 1}", typeof(string));
}
foreach (var row in sheet.Rows)
{
var dataRow = customTable.NewRow();
for (int col = 0; col < sheet.ColumnCount; col++)
{
dataRow[col] = row.Columns[col].Value ?? DBNull.Value;
}
customTable.Rows.Add(dataRow);
}
// Print headers
foreach (DataColumn column in customTable.Columns)
{
Console.Write($"{column.ColumnName}\t");
}
Console.WriteLine();
// Print data rows
foreach (DataRow row in customTable.Rows)
{
foreach (var item in row.ItemArray)
{
Console.Write($"{item}\t");
}
Console.WriteLine();
}
Imports IronXL
Imports System.Data
Dim workBook As WorkBook = WorkBook.Load("inventory.xlsx")
Dim sheet As WorkSheet = workBook.WorkSheets.First()
' Build DataTable manually for custom column types or validation
Dim customTable As New DataTable()
For col As Integer = 0 To sheet.ColumnCount - 1
customTable.Columns.Add($"Column{col + 1}", GetType(String))
Next
For Each row In sheet.Rows
Dim dataRow = customTable.NewRow()
For col As Integer = 0 To sheet.ColumnCount - 1
dataRow(col) = If(row.Columns(col).Value, DBNull.Value)
Next
customTable.Rows.Add(dataRow)
Next
' Print headers
For Each column As DataColumn In customTable.Columns
Console.Write($"{column.ColumnName}" & vbTab)
Next
Console.WriteLine()
' Print data rows
For Each row As DataRow In customTable.Rows
For Each item In row.ItemArray
Console.Write($"{item}" & vbTab)
Next
Console.WriteLine()
Next
이 접근 방식은 가져오기 시 전체 유연성을 제공합니다. Null 값은 DBNull.Value로 변환하여 데이터베이스 열 제약 조건과의 호환성을 보장함으로써 우아하게 처리됩니다. 데이터를 파일에 다시 쓰는 방법에 대한 자세한 내용은 IronXL Excel 파일 쓰기 가이드를 참조하십시오.
산출
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 8 - 데이터테이블 출력
수식, 다중 시트 워크북 및 Entity Framework를 어떻게 작업합니까?
IronXL은 보다 복잡한 실제 시나리오를 위한 기능을 지원하여 기본 읽기를 초월합니다. 라이브러리는 Excel 수식을 보존하여 계산을 동적으로 평가할 수 있도록 합니다. 복잡한 Excel 통합 문서를 다루는 개발자의 경우, 이 기능을 통해 가져오기 과정 전반에 걸쳐 데이터 무결성을 유지할 수 있습니다.
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 9 - 기능
수식 및 계산된 값 읽기
using IronXL;
WorkBook workBook = WorkBook.Load("FinancialReport.xlsx");
WorkSheet sheet = workBook.GetWorkSheet("Reports");
// Read the evaluated result of a formula cell
decimal calculatedTotal = sheet["E10"].DecimalValue;
Console.WriteLine($"Total: {calculatedTotal}");
// Read the formula string itself
string formula = sheet["E10"].Formula;
Console.WriteLine($"Formula: {formula}"); // e.g. "=SUM(E2:E9)"
using IronXL;
WorkBook workBook = WorkBook.Load("FinancialReport.xlsx");
WorkSheet sheet = workBook.GetWorkSheet("Reports");
// Read the evaluated result of a formula cell
decimal calculatedTotal = sheet["E10"].DecimalValue;
Console.WriteLine($"Total: {calculatedTotal}");
// Read the formula string itself
string formula = sheet["E10"].Formula;
Console.WriteLine($"Formula: {formula}"); // e.g. "=SUM(E2:E9)"
Imports IronXL
Dim workBook As WorkBook = WorkBook.Load("FinancialReport.xlsx")
Dim sheet As WorkSheet = workBook.GetWorkSheet("Reports")
' Read the evaluated result of a formula cell
Dim calculatedTotal As Decimal = sheet("E10").DecimalValue
Console.WriteLine($"Total: {calculatedTotal}")
' Read the formula string itself
Dim formula As String = sheet("E10").Formula
Console.WriteLine($"Formula: {formula}") ' e.g. "=SUM(E2:E9)"
수식 지원은 복잡한 계산을 포함한 Excel 파일을 가져올 때 코드에서 비즈니스 로직을 재생성하지 않고 작동합니다. 라이브러리는 수식을 자동으로 평가하여 계산된 값을 반환하면서 원본 수식 문자열을 유지합니다. 이는 중첩 수식을 포함한 금융 모델이나 보고서 템플릿을 가져올 때 매우 가치가 있습니다.
크로스 플랫폼 호환성은 Windows, Linux, macOS 및 컨테이너 환경에서 일관된 동작을 보장합니다. 이는 Office 설치가 불가능한 클라우드 배포 및 마이크로서비스에 IronXL이 잘 맞게 합니다. .NET Foundation의 문서는 현대 .NET 애플리케이션이 플랫폼 독립성에서 어떻게 이점을 얻는지를 강조합니다.
Excel 데이터를 Entity Framework와 통합하기
Entity Framework 통합은 Excel에서 데이터베이스로의 직접 파이프라인을 만듭니다. 다음 패턴은 .NET 10 최상위 문장과 깔끔하게 작동합니다:
using IronXL;
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Skip the header row, map remaining rows to entity objects
var products = sheet.Rows
.Skip(1)
.Select(row => new Product
{
Name = row.Columns[0].StringValue,
Price = row.Columns[1].DecimalValue
})
.ToList();
using var context = new AppDbContext();
await context.Products.AddRangeAsync(products);
await context.SaveChangesAsync();
Console.WriteLine($"Imported {products.Count} products.");
using IronXL;
WorkBook workBook = WorkBook.Load("ProductData.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Skip the header row, map remaining rows to entity objects
var products = sheet.Rows
.Skip(1)
.Select(row => new Product
{
Name = row.Columns[0].StringValue,
Price = row.Columns[1].DecimalValue
})
.ToList();
using var context = new AppDbContext();
await context.Products.AddRangeAsync(products);
await context.SaveChangesAsync();
Console.WriteLine($"Imported {products.Count} products.");
Imports IronXL
Dim workBook As WorkBook = WorkBook.Load("ProductData.xlsx")
Dim sheet As WorkSheet = workBook.DefaultWorkSheet
' Skip the header row, map remaining rows to entity objects
Dim products = sheet.Rows _
.Skip(1) _
.Select(Function(row) New Product With {
.Name = row.Columns(0).StringValue,
.Price = row.Columns(1).DecimalValue
}) _
.ToList()
Using context As New AppDbContext()
Await context.Products.AddRangeAsync(products)
Await context.SaveChangesAsync()
End Using
Console.WriteLine($"Imported {products.Count} products.")
이 패턴은 최소한의 코드로 Excel에서 데이터베이스로의 직접 마이그레이션을 가능하게 만들어 ETL 프로세스, 일회성 데이터 마이그레이션 및 예약된 가져오기 작업에 적합합니다. LINQ 프로젝션은 컨텍스트 저장 전에 메모리에서 실행되므로 유효성 검사 또는 변환 로직을 같은 단계에서 적용할 수 있습니다. C# 데이터를 사용하여 새 Excel 파일을 생성하는 방법에 대해서는 IronXL Excel 파일 생성 가이드를 참조하세요.
지원되는 파일 형식
IronXL은 추가 라이브러리나 Office 설치 없이 다양한 스프레드시트 형식을 처리합니다. 다음 표는 지원되는 형식과 그 사용 사례를 요약한 것입니다:
| 형식 | 확장자 | 노트 |
|---|---|---|
| 엑셀 통합 문서 | .xlsx | Excel 2007 및 이후 기본 형식 |
| 구형 Excel 워크북 | .xls | 구형 Excel 버전과 호환 |
| 쉼표로 구분된 값 | .csv | 광범위하게 지원되는 순수 텍스트 표 형식 데이터 |
| 탭으로 구분된 값 | .tsv | 내부 쉼표가 포함된 데이터에 적합 |
| Excel 이진 워크북 | .xlsb | 대용량 파일을 위한 압축 이진 형식 |
이러한 형식으로 데이터를 다시 내보내는 방법에 대해서는 IronXL Excel 내보내기 가이드를 참조하십시오.
가져오기 시 셀 서식을 어떻게 처리합니까?
Excel 파일을 가져올 때, 셀 서식을 보존하거나 검사하는 것은 원시 값을 읽는 것만큼이나 중요할 때가 많습니다. IronXL은 모든 셀의 폰트, 색상, 정렬 및 테두리 속성을 공개하여 유효성 검사 규칙을 적용하거나 스타일을 프로그래밍 방식으로 재현할 수 있습니다. 이는 시각적인 서식이 의미론적 의미를 갖는 보고서에서 특히 유용합니다. 예를 들어, 위험 수준을 나타내는 색상으로 된 셀 또는 합계를 나타내는 굵은 행.
예를 들어, 셀이 굵은 텍스트를 포함하는지 확인하고 싶을 수 있습니다. 이는 행이 요약 또는 합계 행이라는 일반적인 신호로, 가져온 데이터 집합에 포함할지 여부를 결정하기 전에.
using IronXL;
WorkBook workBook = WorkBook.Load("StyledReport.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
foreach (var row in sheet.Rows)
{
var firstCell = row.Columns[0];
// Skip rows where the first cell is bold (typically header or total rows)
if (firstCell.Style.Font.Bold)
{
continue;
}
Console.WriteLine($"Data row: {firstCell.StringValue}");
}
using IronXL;
WorkBook workBook = WorkBook.Load("StyledReport.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
foreach (var row in sheet.Rows)
{
var firstCell = row.Columns[0];
// Skip rows where the first cell is bold (typically header or total rows)
if (firstCell.Style.Font.Bold)
{
continue;
}
Console.WriteLine($"Data row: {firstCell.StringValue}");
}
Imports IronXL
Dim workBook As WorkBook = WorkBook.Load("StyledReport.xlsx")
Dim sheet As WorkSheet = workBook.DefaultWorkSheet
For Each row In sheet.Rows
Dim firstCell = row.Columns(0)
' Skip rows where the first cell is bold (typically header or total rows)
If firstCell.Style.Font.Bold Then
Continue For
End If
Console.WriteLine($"Data row: {firstCell.StringValue}")
Next
숫자 서식 문자열 및 배경색 액세스를 포함한 셀 및 범위 서식에 대한 전체 참조는 IronXL 셀 서식 가이드를 참조하십시오. 처리 후 출력 파일에 병합 작업을 적용할 수도 있습니다 -- IronXL 셀 병합 가이드를 참조하십시오.
프로젝트에 맞는 IronXL 라이센스를 어떻게 선택하나요?
IronXL은 프로젝트의 규모에 맞춰 유연한 라이센스 옵션을 제공합니다. 무료 체험 라이센스는 평가용으로 제공되며 개발 중에는 시간 제한 없이 모든 기능을 사용할 수 있습니다. 체험판은 출력 파일에 워터마크를 추가하며, 유효한 상용 라이센스로 제거됩니다.
IronXL을 사용하여 C#에서 MS Excel 파일 데이터를 쉽게 가져오기, 읽기 및 조작하는 방법: 이미지 10 - 라이선스
상용 애플리케이션을 구축하는 팀의 경우, IronXL 라이센스에는 개별 개발자, 팀, 조직 전체 배포를 위한 옵션이 포함됩니다. 모든 상용 라이센스에는 다음이 포함됩니다:
- 로열티 없는 재배포 권한
- IronXL 개발 팀의 우선 지원
- 라이센스 기간 동안 현재 버전 및 하위 버전 업데이트 액세스
IronXL을 다른 Excel 라이브러리와 함께 평가 중인 경우, IronXL 기능 개요에서 각 티어에 포함된 세부 목록을 확인할 수 있습니다.
오늘 프로젝트에서 IronXL 사용을 시작하려면 IronXL 제품 페이지를 방문하거나 IronXL 문서에서 설정 가이드, 사용법 기사, 라이브러리의 모든 기능을 다루는 API 참조를 시작하세요.
자주 묻는 질문
C#에서 Excel 데이터를 가져오는 방법은 무엇인가요?
IronXL 사용하면 시스템에 Microsoft Excel이 설치되어 있지 않아도 Excel 데이터를 C#으로 쉽게 가져올 수 있습니다.
IronXL 사용하여 Excel 파일을 조작할 때의 이점은 무엇입니까?
IronXL 사용하면 개발자는 복잡한 종속성 없이 C#에서 Excel 파일을 읽고 쓰고 조작할 수 있으며, 다양한 플랫폼에서 작동합니다.
IronXL 사용하려면 Microsoft Office가 설치되어 있어야 하나요?
아니요, IronXL Microsoft Office 설치가 필요 없으므로 C# 애플리케이션 내에서 Excel 파일을 직접 사용할 수 있습니다.
IronXL XLSX 및 CSV 파일 형식을 모두 처리할 수 있습니까?
네, IronXL XLSX 및 CSV를 포함한 다양한 Excel 파일 형식을 지원하므로 다양한 데이터 처리 요구 사항에 맞춰 활용할 수 있습니다.
IronXL 대용량 Excel 파일 처리에 적합한가요?
네, IronXL 은 대용량 Excel 파일을 효율적으로 처리하도록 설계되어 개발자가 성능 문제 없이 방대한 데이터 세트를 처리할 수 있습니다.
IronXL 어떤 플랫폼을 지원하나요?
IronXL 다양한 플랫폼과 호환되므로 Excel 파일을 처리하는 애플리케이션의 플랫폼 간 개발 및 배포가 가능합니다.
IronXL Excel에서 데이터베이스로의 데이터 마이그레이션을 어떻게 간소화합니까?
IronXL 엑셀 시트에서 데이터를 읽고 내보내는 간단한 방법을 제공하여 복잡한 코딩 없이도 데이터를 데이터베이스로 쉽게 전송할 수 있도록 해줍니다.
IronXL 사용하여 엑셀 보고서 생성을 자동화할 수 있나요?
네, IronXL Excel 보고서 생성을 자동화하여 C#으로 Excel 파일을 프로그래밍 방식으로 생성하고 조작할 수 있도록 해줍니다.
IronXL 소규모 애플리케이션과 기업 수준의 애플리케이션 모두에 적합한가요?
IronXL 은 다재다능하고 확장성이 뛰어나 소규모 프로젝트부터 Excel 파일 조작이 필요한 대규모 기업용 애플리케이션까지 모두 적합합니다.



