C#에서 Excel 파일을 열고 데이터를 쓰는 방법
이 문서에서는 IronXL 라이브러리를 탐색하여 C# 콘솔 애플리케이션에서 Microsoft Excel 파일을 열고 데이터를 쓰는 방법을 시연합니다.
IronXL - 엑셀 라이브러리
IronXL은 C# 애플리케이션에서 Excel 파일의 생성, 읽기 및 편집을 용이하게 하는 .NET Excel 라이브러리입니다. 우수한 성능과 정확한 출력을 제공합니다. 라이브러리는 XLS, XLSX, XLSM, CSV, TSV를 포함한 모든 Excel 워크북 파일 형식을 지원합니다. 또한 JSON, HTML, Binary, Byte Array, DataSet, 또는 DataTable 형식으로 데이터를 저장하거나 내보낼 수 있습니다.
IronXL을 사용하면 개발자는 워크시트와 셀 범위를 원활하게 작업할 수 있습니다. 이를 통해 시트 내에서 수식을 편집하고 쉽게 다시 계산할 수 있는 기능을 제공합니다. 범위, 열, 행에 따른 데이터 정렬은 직관적입니다. 라이브러리는 창 고정, 행/열 자동 크기 조정, 행/열 추가/제거와 같은 레이아웃 수정 기능을 제공합니다.
IronXL은 또한 사용자 비밀번호와 편집 권한으로 Excel 파일을 보호할 수 있게 합니다. 또한 주목할 만한 기능은 Excel 워크시트에서 이미지를 추가, 제거 및 추출할 수 있는 기능입니다. 라이브러리는 다양한 셀 데이터 포맷을 지원하는 광범위한 Excel 기능을 제공합니다. 이러한 기능들은 IronXL을 Excel 파일 작업을 위한 가장 사용자 친화적인 API 중 하나로 만듭니다.
IronXL의 주요 장점 중 하나는 기계에 Microsoft Excel을 설치할 필요가 없다는 점이며, Office Interop 또는 기타 종속성을 필요로 하지 않습니다. 다양한 플랫폼과 호환되며, .NET 7, 6, 5를 지원합니다. 또한 .NET Core 2, 3 및 Excel 스프레드시트 작업 for .NET Framework 4.5 이상 버전과도 호환됩니다.
콘솔 애플리케이션 만들기
애플리케이션을 생성하려면 최신 버전의 Visual Studio IDE를 권장합니다. Visual Studio는 C# 개발을 위한 공식 IDE이며, 이미 설치했다고 가정합니다. Visual Studio를 설치하지 않았다면 Microsoft Visual Studio 웹사이트에서 다운로드할 수 있습니다.
이 단계들을 따라 "DemoApp"이라는 새 프로젝트를 만드세요.
-
Visual Studio를 열고 새 프로젝트 생성을 클릭하세요.
새 프로젝트 -
콘솔 응용 프로그램을 선택하고 다음을 클릭하세요.
새 프로젝트 유형 -
프로젝트 이름을 입력하세요.
새 프로젝트 이름 -
.NET 버전을 선택하세요. 안정된 버전 .NET 6.0을 선택하십시오.
새 프로젝트 추가 정보
IronXL 라이브러리 설치
프로젝트가 생성되면, IronXL 라이브러리를 프로젝트에 설치하여 사용해야 합니다. 다음 단계에 따라 설치하세요.
-
솔루션 탐색기 또는 도구에서 솔루션용 NuGet 패키지 관리를 엽니다.
NuGet 패키지 관리자 -
IronXL 라이브러리를 검색하여 현재 프로젝트를 선택하십시오. 설치를 클릭하세요.
NuGet 패키지 관리자 UI에서 IronXL 패키지를 검색하고 설치
Program.cs 파일의 맨 위에 다음 네임스페이스를 추가하세요
using IronXL;
using IronXL;
Imports IronXL
Open an Existing Excel File in C
IronXL은 기존의 Excel 파일을 열거나 새 Excel 파일을 만들 수 있는 기능을 제공합니다. 이 예제는 C# IronXL을 사용하여 기존의 파일을 열 것입니다.
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
이제 첫 번째 워크시트를 선택해 봅시다. 인덱스 번호 또는 이름으로 워크시트를 선택할 수 있습니다. DefaultWorkSheet 속성은 첫 번째 시트를 얻는 데 도움을 줄 수 있습니다.
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Select worksheet by name
WorkSheet ws = workBook.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Select worksheet by name
WorkSheet ws = workBook.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
' Select worksheet by name
Dim ws As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Get any existing worksheet
Dim firstSheet As WorkSheet = workBook.DefaultWorkSheet
위의 코드는 Excel 워크북에서 첫 번째 시트를 가져옵니다. 데이터와 함께 새 Excel 파일을 생성하려면 이 코드 예제 페이지를 확인하세요.
이제 IronXL 객체 라이브러리를 사용하여 Excel 파일에 데이터를 작성해 봅시다.
Write Data to Excel File in C
IronXL을 사용하여 Excel 파일에 데이터를 쓰는 것은 매우 쉽습니다. 이를 실행할 수 있는 여러 방법이 있지만 가장 간단한 방법은 Excel 셀 참조를 사용하는 것입니다.
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
' Access A1 cell and write the value
workSheet("A1").Value = "Value using cell reference"
셀 범위에 데이터를 쓰는 것도 가능합니다. 다음 코드는 셀 B1에서 B5로 데이터를 작성합니다.
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
' Write the same value to cells from B1 to B5
workSheet("B1:B5").Value = "Range value"
또한 for 반복문을 사용하여 범위를 채워 동적으로 만들 수 있습니다. 코드는 다음과 같습니다.
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
' Specify range in which we want to write the values
For i As Integer = 1 To 5
' Write the Dynamic value in column C
workSheet("C" & i).Value = "Value: " & i
' Write the Dynamic value in column D
workSheet("D" & i).Value = "Value: " & i
Next i
Excel 파일에 데이터를 쓰는 또 다른 방법은 Replace 메서드를 사용하는 것입니다.
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
' Replace the value in cell D5
workSheet("D5").Replace("Value: 5", "Replaced Value")
Save an Excel File in C
이 섹션은 새로 작성된 내용을 사용하여 Excel 파일을 저장하는 방법을 설명합니다.
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
' Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx")
전체 코드는 다음과 같습니다.
using System;
using IronXL;
class Program
{
static void Main(string[] args)
{
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
Console.WriteLine("Successfully written to Excel File");
}
}
using System;
using IronXL;
class Program
{
static void Main(string[] args)
{
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
Console.WriteLine("Successfully written to Excel File");
}
}
Imports System
Imports IronXL
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
' Access A1 cell and write the value
workSheet("A1").Value = "Value using cell reference"
' Write the same value to cells from B1 to B5
workSheet("B1:B5").Value = "Range value"
' Specify range in which we want to write the values
For i As Integer = 1 To 5
' Write the Dynamic value in column C
workSheet("C" & i).Value = "Value: " & i
' Write the Dynamic value in column D
workSheet("D" & i).Value = "Value: " & i
Next i
' Replace the value in cell D5
workSheet("D5").Replace("Value: 5", "Replaced Value")
' Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx")
Console.WriteLine("Successfully written to Excel File")
End Sub
End Class
C#에서 Excel 파일 데이터를 읽는 방법에 대한 보다 자세한 정보를 보려면 이 예제를 참조하세요.
출력
파일의 출력은 다음과 같습니다:
출력 Excel 파일
요약
이 기사에서는 IronXL을 사용하여 C#에서 Excel 파일에 데이터를 쓰는 방법을 설명했습니다. IronXL은 기존 Excel 파일과 번거로움 없이 작업할 수 있는 기능을 제공합니다. 또한 쉽게 문법으로 새 Excel 파일을 생성하고 데이터로 작성할 수 있습니다. IronXL은 Microsoft Excel 응용 프로그램이 설치되지 않은 상태에서도 Excel 파일을 읽는 데 사용할 수 있습니다. Excel 파일에서 데이터를 읽으려면 이 코드 예제 페이지를 참조하세요.
IronXL은 개발용으로 무료이며 상업적 용도로 라이선스가 가능합니다. 상업적 사용을 위한 IronXL 무료 체험판도 시도해 볼 수 있습니다.
자주 묻는 질문
Interop을 사용하지 않고 C#에서 Excel 파일을 열려면 어떻게 해야 하나요?
IronXL 라이브러리를 사용하면 Interop 없이도 C#에서 Excel 파일을 열 수 있습니다. IronXL 사용하면 Microsoft Excel을 설치할 필요 없이 Excel 파일을 효율적으로 처리할 수 있어 성능과 호환성이 향상됩니다.
C#을 사용하여 Excel 파일의 특정 셀에 데이터를 쓰는 방법은 무엇인가요?
IronXL 사용하면 Excel 파일의 특정 셀에 데이터를 쓸 수 있습니다. 워크북에 접근하여 워크시트를 선택한 다음 셀 참조를 사용하여 원하는 셀에 값을 할당하면 됩니다.
Excel 파일 조작 시 Office Interop 대신 IronXL 사용하는 장점은 무엇입니까?
IronXL Microsoft Excel 설치에 대한 의존성이 없고, 성능이 향상되었으며, 플랫폼 간 호환성이 뛰어나고, XLS, XLSX, CSV와 같은 다양한 Excel 파일 형식을 지원하는 등 Office Interop에 비해 여러 가지 장점을 제공합니다.
이 라이브러리를 사용하여 엑셀 파일의 수식을 편집할 수 있나요?
네, IronXL 사용하면 Excel 파일의 수식을 편집할 수 있습니다. 간단한 구문을 사용하여 기존 수식을 수정하거나 새 수식을 삽입할 수 있으며, 라이브러리가 이를 효율적으로 처리합니다.
IronXL 다양한 Excel 파일 형식을 어떻게 지원합니까?
IronXL XLS, XLSX, XLSM, CSV, TSV 등 다양한 Excel 파일 형식을 지원하므로 C# 애플리케이션에서 이러한 파일을 원활하게 생성, 읽기 및 편집할 수 있습니다.
IronXL 사용하여 Excel 파일을 보호할 수 있습니까?
예, IronXL 사용자 암호 및 권한 설정을 통해 Excel 파일을 보호하는 기능을 제공하여 데이터 보안 및 접근 제어를 보장합니다.
IronXL 라이브러리를 C# 프로젝트에 통합하려면 어떻게 해야 하나요?
C# 프로젝트에 IronXL 통합하려면 Visual Studio의 NuGet 패키지 관리자를 사용하면 됩니다. IronXL 검색하여 프로젝트에 추가하면 해당 기능을 사용할 수 있습니다.
IronXL 은 어떤 플랫폼을 지원하나요?
IronXL .NET 5, 6, 7은 물론 .NET Core 및 Framework를 포함한 다양한 플랫폼을 지원하므로 다양한 개발 환경에 적합한 다목적 솔루션입니다.
IronXL 무료로 사용할 수 있나요?
IronXL 개발 목적으로는 무료로 사용할 수 있습니다. 하지만 상업적 용도로 사용하려면 라이선스가 필요합니다. 상업적 환경에서 라이브러리 기능을 테스트해 볼 수 있는 무료 평가판이 제공됩니다.
IronXL 사용하여 Excel 데이터를 JSON으로 내보내는 방법은 무엇입니까?
IronXL 사용하면 워크시트 또는 특정 데이터 범위를 JSON 문자열로 변환하여 Excel 데이터를 JSON 형식으로 내보낼 수 있으며, 이렇게 변환된 JSON 데이터는 JSON 데이터가 필요한 애플리케이션에서 사용할 수 있습니다.



