푸터 콘텐츠로 바로가기
IRONXL 사용하여

IronXL 사용하여 C#에서 Excel 파일을 읽는 방법

C# 응용 프로그램에서 Excel 파일을 읽는 것은 비즈니스 소프트웨어, 데이터 처리 파이프라인 및 보고 시스템에 반복적인 요구 사항입니다. Microsoft Office Interop을 사용한 전통적인 접근 방식은 모든 서버나 워크스테이션에 Excel이 설치되어야 하며, 이는 배포 및 라이센스를 복잡하게 만드는 취약한 종속성을 생성합니다. IronXL은 환경 어디에도 Office가 설치되지 않은 상태에서 XLSX, XLS, CSV 및 다른 스프레드시트 형식을 읽을 수 있도록 완전히 그 종속성을 제거합니다.

이 자습서에서는 라이브러리 설치, 워크북 로드, 유형화된 셀 값 추출, 행과 열 순회, 집계 계산 실행, 완전한 직원 데이터 리더 구축을 안내합니다. 모든 예제는 .NET 10을 목표로 하는 최상위 문장이 포함된 C#을 사용합니다.


Excel 처리를 위해 IronXL을 어떻게 설치하나요?

Visual Studio에서 NuGet 패키지 관리자 콘솔을 열고 다음 명령을 실행하여 프로젝트에 IronXL을 추가하세요. 대안으로, 터미널에서 작업하는 것을 선호한다면 두 번째 줄에 표시된 .NET CLI 명령을 사용하세요:

Install-Package IronXl.Excel
dotnet add package IronXl.Excel
Install-Package IronXl.Excel
dotnet add package IronXl.Excel
SHELL

패키지는 몇 초 만에 설치되며 프로젝트에 하나의 관리된 어셈블리 참조만 추가합니다. COM 등록, Office 기본 상호 운용 어셈블리, 버전 특정 Excel 종속성을 관리할 필요가 없습니다.

설치 후에는 스프레드시트 데이터를 처리하는 각 파일의 맨 위에 using 지시문을 추가하세요:

using IronXL;
using IronXL;
$vbLabelText   $csharpLabel

해당 단일 네임스페이스를 통해 WorkBook, WorkSheet, 셀 범위, 타입된 값 속성, 집계 함수 및 모든 기타 IronXL 타입에 접근할 수 있습니다. IronXl.Excel의 NuGet 갤러리 페이지에는 모든 사용 가능한 릴리스와 전체 의존성 트리가 목록화되어 있습니다.


IronXL이 지원하는 Excel 파일 형식은 무엇인가요?

응용 프로그램이 처리해야 하는 형식을 이해하는 것은 당신이 호출해야 할 API와 프로젝트가 채택하는 저장소 결정을 형성합니다.

XLSX -- Excel 2007 이후 기본 형식은 XML 파일의 ZIP 아카이브입니다. 이는 백만 개 이상의 행, 풍부한 서식, 피벗 테이블 및 명명된 범위를 지원합니다. 대부분의 현대 데이터 파이프라인은 XLSX 출력을 생성하므로 이는 가장 자주 접하는 형식입니다.

XLS는 Excel 2003 및 이전에 사용되던 레거시 이진 형식입니다. 일부 Enterprise 시스템은 여전히 XLS를 내보내므로, 오래된 인프라와의 통합 시 이 형식에 대한 신뢰할 수 있는 지원이 중요합니다. IronXL은 사용자가 특별한 구성을 하지 않아도 XLS 파일을 읽습니다.

XLSM은 매크로 지원을 통해 XLSX를 확장합니다. IronXL은 내장된 VBA 코드를 실행하지 않아도 XLSM 파일에서 스프레드시트 데이터를 읽으며, 이는 서버 측 데이터 추출에 적합한 동작입니다.

CSV 및 TSV는 시스템 간 데이터 교환에 널리 사용되는 평문 테이블 형식입니다. WorkBook.LoadCSV는 쉼표로 구분된 파일을 처리하며, IronXL은 코드를 통해 이미 탐색할 수 있는 동일한 WorkBook 객체를 반환하여 소스 형식에 관계없이 데이터 읽기 논리를 일관되게 유지합니다.

IronXL은 WorkBook.Load을 호출할 때 파일 확장자에서 파일 형식을 자동으로 감지합니다. 대부분의 경우 명시적으로 형식을 지정할 필요가 없으며, 이는 여러 소스에서 오는 입력을 처리해야 하는 코드를 단순화합니다.

IronXL에서 지원하는 Excel 파일 형식
형식 확장자 로드 메소드 노트
Open XML 워크북 .xlsx WorkBook.Load 기본 현대 형식
이전 바이너리 .xls WorkBook.Load 엑셀 2003 및 이전 버전
매크로 활성화 .xlsm WorkBook.Load 데이터 읽기; 매크로 실행 안 함
쉼표로 구분 .csv WorkBook.LoadCSV 최적화된 CSV 파서
탭으로 구분 .tsv WorkBook.Load 탭 구분자 변형

엑셀 워크북을 어떻게 로드하고 읽습니까?

WorkBook.Load 메서드는 모든 파일 기반 작업의 진입점입니다. 파일 경로를 전달하면 IronXL은 즉시 쿼리할 수 있는 완전한 작업 책 객체를 반환합니다:

using IronXL;

// Load the workbook; format is detected automatically
WorkBook workbook = WorkBook.Load("Employees.xlsx");

// Access the first worksheet
WorkSheet sheet = workbook.DefaultWorkSheet;

// Read a single cell by A1 address
string companyName = sheet["A1"].StringValue;
Console.WriteLine($"Company: {companyName}");

// Access sheets by name or by zero-based index
WorkSheet byName  = workbook.GetWorkSheet("Sales");
WorkSheet byIndex = workbook.WorkSheets[1];

// Load a password-protected file
WorkBook secured = WorkBook.Load("Confidential.xlsx", "p@ssw0rd");
using IronXL;

// Load the workbook; format is detected automatically
WorkBook workbook = WorkBook.Load("Employees.xlsx");

// Access the first worksheet
WorkSheet sheet = workbook.DefaultWorkSheet;

// Read a single cell by A1 address
string companyName = sheet["A1"].StringValue;
Console.WriteLine($"Company: {companyName}");

// Access sheets by name or by zero-based index
WorkSheet byName  = workbook.GetWorkSheet("Sales");
WorkSheet byIndex = workbook.WorkSheets[1];

// Load a password-protected file
WorkBook secured = WorkBook.Load("Confidential.xlsx", "p@ssw0rd");
$vbLabelText   $csharpLabel

DefaultWorkSheet 속성은 첫 번째 시트를 반환하여 대부분의 단일 시트 파일을 커버합니다. 파일에 여러 시트가 포함된 경우, GetWorkSheet는 이름으로 검색하고 WorkSheets[n]는 0 기반 인덱스로 검색합니다. 작업 책 API 참조는 작업 책 객체의 모든 오버로드와 속성을 문서화합니다.

VB.NET으로 IronXL을 사용한 Excel 파일 읽기: 마이크로소프트 오피스 없이 단계별 안내서: 이미지 1 - 설치

입력

VB.NET으로 IronXL을 사용한 Excel 파일 읽기: 마이크로소프트 오피스 없이 단계별 안내서: 이미지 2 - 샘플 Excel 입력

산출

VB.NET으로 IronXL을 사용한 Excel 파일 읽기: 마이크로소프트 오피스 없이 단계별 안내서: 이미지 3 - 콘솔 출력


엑셀에서 입력된 셀 값을 어떻게 읽나요?

IronXL의 모든 셀은 필요로 하는 정확한 데이터 유형으로 값을 반환하는 유형화된 속성을 노출합니다 -- 수동 파싱이나 캐스팅이 필요 없습니다. 유형화된 속성은 기본 셀 표현에서 자동으로 변환을 처리합니다:

using IronXL;

WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet   = workbook.DefaultWorkSheet;

// Extract typed values from row 2
int      employeeId = sheet["A2"].IntValue;
string   name       = sheet["B2"].StringValue;
string   department = sheet["C2"].StringValue;
decimal  salary     = sheet["D2"].DecimalValue;
DateTime hireDate   = sheet["E2"].DateTimeValue;

Console.WriteLine($"ID:         {employeeId}");
Console.WriteLine($"Name:       {name}");
Console.WriteLine($"Department: {department}");
Console.WriteLine($"Salary:     {salary:C}");
Console.WriteLine($"Hired:      {hireDate:d}");

// Use the Text property for the formatted display value
string formattedSalary = sheet["D2"].Text;   // "$75,000.00"
string formattedDate   = sheet["E2"].Text;   // "28/02/2026"

// Guard against empty cells before reading
if (!sheet["B3"].IsEmpty)
{
    string value = sheet["B3"].StringValue;
}
using IronXL;

WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet   = workbook.DefaultWorkSheet;

// Extract typed values from row 2
int      employeeId = sheet["A2"].IntValue;
string   name       = sheet["B2"].StringValue;
string   department = sheet["C2"].StringValue;
decimal  salary     = sheet["D2"].DecimalValue;
DateTime hireDate   = sheet["E2"].DateTimeValue;

Console.WriteLine($"ID:         {employeeId}");
Console.WriteLine($"Name:       {name}");
Console.WriteLine($"Department: {department}");
Console.WriteLine($"Salary:     {salary:C}");
Console.WriteLine($"Hired:      {hireDate:d}");

// Use the Text property for the formatted display value
string formattedSalary = sheet["D2"].Text;   // "$75,000.00"
string formattedDate   = sheet["E2"].Text;   // "28/02/2026"

// Guard against empty cells before reading
if (!sheet["B3"].IsEmpty)
{
    string value = sheet["B3"].StringValue;
}
$vbLabelText   $csharpLabel

Text 속성은 형식화된 Excel 그대로 표시 값을 반환하여 원시 숫자가 아닌 형식화된 숫자 문자열이 필요한 경우 유용합니다. 엑셀 수식을 포함하는 셀의 경우, IronXL은 표현식을 평가하고 동일한 유형화된 속성을 통해 계산된 결과를 반환합니다. 추가 값 속성 -- BoolValue, DoubleValue, FloatValue --은 셀 값 참조에 나타납니다.


엑셀 행과 열을 어떻게 반복합니까?

데이터 세트의 모든 레코드를 처리하려면 행과 열을 반복해야 합니다. IronXL의 범위 구문은 Excel의 A1 표기법에 직접 매핑되어 있으므로 셀 블록을 선택하는 것은 스프레드시트 수식을 작성한 사람에게 익숙합니다:

using IronXL;

WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet   = workbook.DefaultWorkSheet;

// Iterate a single column range
Console.WriteLine("Employee List:");
foreach (var cell in sheet["B2:B100"])
{
    if (!string.IsNullOrEmpty(cell.Text))
        Console.WriteLine($"  - {cell.Text}");
}

// Iterate all rows and all columns using the Rows property
foreach (var row in sheet.Rows)
{
    foreach (var cell in row)
        Console.Write(cell.Text.PadRight(15));
    Console.WriteLine();
}
using IronXL;

WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet   = workbook.DefaultWorkSheet;

// Iterate a single column range
Console.WriteLine("Employee List:");
foreach (var cell in sheet["B2:B100"])
{
    if (!string.IsNullOrEmpty(cell.Text))
        Console.WriteLine($"  - {cell.Text}");
}

// Iterate all rows and all columns using the Rows property
foreach (var row in sheet.Rows)
{
    foreach (var cell in row)
        Console.Write(cell.Text.PadRight(15));
    Console.WriteLine();
}
$vbLabelText   $csharpLabel

범위 sheet["B2:B100"]는 셀 객체의 열거 가능한 컬렉션을 반환합니다. 체크 string.IsNullOrEmpty는 빈 행을 우아하게 건너뜁니다. Rows 속성 -- 워크시트 데이터 범위 가이드에 문서화된 --은 시트를 한 행씩 걷으며 미리 열 수를 알지 않아도 각 행의 셀을 노출합니다.

산출

VB.NET으로 IronXL을 사용한 Excel 파일 읽기: 마이크로소프트 오피스 없이 단계별 안내서: 이미지 4 - Excel 행 출력


엑셀 데이터에 대해 집계 계산을 어떻게 수행합니까?

IronXL은 셀 범위에서 직접 결과를 계산하는 기본 집계 함수를 포함하고 있습니다 -- 수동 누적 루프가 필요 없습니다:

using IronXL;

WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet   = workbook.DefaultWorkSheet;

// Built-in aggregate methods work on any named range
decimal total   = sheet["D2:D200"].Sum();
decimal highest = sheet["D2:D200"].Max();
decimal lowest  = sheet["D2:D200"].Min();
decimal average = sheet["D2:D200"].Avg();

Console.WriteLine($"Total Payroll:  {total:C}");
Console.WriteLine($"Highest Salary: {highest:C}");
Console.WriteLine($"Lowest Salary:  {lowest:C}");
Console.WriteLine($"Average Salary: {average:C}");

// Combine with LINQ for filtered aggregation
decimal itTotal = sheet["D2:D200"]
    .Where(c => sheet[$"C{c.RowIndex}"].StringValue == "IT")
    .Sum(c => c.DecimalValue);
Console.WriteLine($"IT Department Total: {itTotal:C}");
using IronXL;

WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet   = workbook.DefaultWorkSheet;

// Built-in aggregate methods work on any named range
decimal total   = sheet["D2:D200"].Sum();
decimal highest = sheet["D2:D200"].Max();
decimal lowest  = sheet["D2:D200"].Min();
decimal average = sheet["D2:D200"].Avg();

Console.WriteLine($"Total Payroll:  {total:C}");
Console.WriteLine($"Highest Salary: {highest:C}");
Console.WriteLine($"Lowest Salary:  {lowest:C}");
Console.WriteLine($"Average Salary: {average:C}");

// Combine with LINQ for filtered aggregation
decimal itTotal = sheet["D2:D200"]
    .Where(c => sheet[$"C{c.RowIndex}"].StringValue == "IT")
    .Sum(c => c.DecimalValue);
Console.WriteLine($"IT Department Total: {itTotal:C}");
$vbLabelText   $csharpLabel

Sum, Min, MaxAvg는 빈 셀을 자동으로 건너뛰고 숫자 변환을 백그라운드에서 처리합니다. 범위에 LINQ 쿼리를 체인하면 필터링된 집계 -- 부서 소계, 날짜 범위 합계, 조건부 계산 -- 를 IronXL API 내에서 수행할 수 있습니다.


완전한 직원 데이터 읽기기를 어떻게 구축합니까?

다음 예제는 직원 스프레드시트를 로드하고 각 레코드를 형식화하고 급여 총계를 누적하고 쓰기를 처리하고 오류를 유연하게 처리하는 프로덕션 준비가 된 콘솔 애플리케이션에 지금까지 다룬 모든 것을 조립합니다:

using IronXL;

try
{
    WorkBook workbook = WorkBook.Load("Employees.xlsx");
    WorkSheet sheet   = workbook.DefaultWorkSheet;

    Console.WriteLine("=== Employee Data Report ===\n");

    int     rowNumber     = 2;
    decimal totalSalary   = 0m;
    int     employeeCount = 0;

    while (!string.IsNullOrEmpty(sheet[$"A{rowNumber}"].StringValue))
    {
        int      id         = sheet[$"A{rowNumber}"].IntValue;
        string   name       = sheet[$"B{rowNumber}"].StringValue;
        string   department = sheet[$"C{rowNumber}"].StringValue;
        decimal  salary     = sheet[$"D{rowNumber}"].DecimalValue;

        Console.WriteLine($"{id,4}  {name,-20}  {department,-15}  {salary,10:C}");

        totalSalary   += salary;
        employeeCount += 1;
        rowNumber     += 1;
    }

    Console.WriteLine($"\nTotal Employees: {employeeCount}");
    Console.WriteLine($"Total Payroll:   {totalSalary:C}");

    // Write a new record back to the sheet and save
    sheet["A10"].Value = 1010;
    sheet["B10"].Value = "Jane Doe";
    sheet["C10"].Value = "Finance";
    sheet["D10"].Value = 75000;
    workbook.SaveAs("Employees-Updated.xlsx");
}
catch (Exception ex)
{
    Console.WriteLine($"Error reading Excel file: {ex.Message}");
}
using IronXL;

try
{
    WorkBook workbook = WorkBook.Load("Employees.xlsx");
    WorkSheet sheet   = workbook.DefaultWorkSheet;

    Console.WriteLine("=== Employee Data Report ===\n");

    int     rowNumber     = 2;
    decimal totalSalary   = 0m;
    int     employeeCount = 0;

    while (!string.IsNullOrEmpty(sheet[$"A{rowNumber}"].StringValue))
    {
        int      id         = sheet[$"A{rowNumber}"].IntValue;
        string   name       = sheet[$"B{rowNumber}"].StringValue;
        string   department = sheet[$"C{rowNumber}"].StringValue;
        decimal  salary     = sheet[$"D{rowNumber}"].DecimalValue;

        Console.WriteLine($"{id,4}  {name,-20}  {department,-15}  {salary,10:C}");

        totalSalary   += salary;
        employeeCount += 1;
        rowNumber     += 1;
    }

    Console.WriteLine($"\nTotal Employees: {employeeCount}");
    Console.WriteLine($"Total Payroll:   {totalSalary:C}");

    // Write a new record back to the sheet and save
    sheet["A10"].Value = 1010;
    sheet["B10"].Value = "Jane Doe";
    sheet["C10"].Value = "Finance";
    sheet["D10"].Value = 75000;
    workbook.SaveAs("Employees-Updated.xlsx");
}
catch (Exception ex)
{
    Console.WriteLine($"Error reading Excel file: {ex.Message}");
}
$vbLabelText   $csharpLabel

while 반복문은 열 A가 빈 상태가 되면 종료되어, 하드코딩된 행 수를 요구하지 않고도 스프레드시트의 모든 길이에 적응할 수 있게 합니다. 값을 다시 쓰는 것은 읽기와 같은 셀 주소 구문을 따르며, SaveAs는 변경 사항을 새 파일로 유지하여 원본을 그대로 남깁니다. try/catch 블록은 누락된 파일, 잠긴 워크북 및 손상된 데이터를 처리하여 외부 소스에서 입력 파일이 도착하는 프로덕션 환경에서 발생하는 모든 시나리오를 관리합니다.

산출

VB.NET으로 IronXL을 사용한 Excel 파일 읽기: 마이크로소프트 오피스 없이 단계별 안내서: 이미지 5 - 직원 데이터 출력

스프레드시트를 만드는 방법 가이드XLSX를 CSV로 변환하는 가이드는 끝-끝 워크플로우에서 읽기와 쓰기를 결합하는 방법을 보여줍니다. 셀 스타일링 가이드는 형식화된 출력이 요구될 때 글꼴 크기, 색상 및 테두리를 다룹니다.

VB.NET으로 IronXL을 사용한 Excel 파일 읽기: 마이크로소프트 오피스 없이 단계별 안내서: 이미지 6 - 윈도우 폼 출력


고급 읽기 시나리오는 어떻게 처리합니까?

실제 프로젝트에서는 몇 가지 드문 경우가 발생합니다. 이름 있는 범위, 워크시트 검색, CSV 로드는 각 API 지원을 받습니다.

이름 있는 범위는 셀 주소가 아닌 논리적 레이블로 데이터를 참조할 수 있게 합니다. 워크북 작성자가 SalaryTable이라는 이름의 범위를 정의한 경우, GetRangeByName를 통해 직접 액세스합니다.

var range = workbook.GetRangeByName("SalaryTable");
decimal total = range.Sum();
Console.WriteLine($"Named range total: {total:C}");
var range = workbook.GetRangeByName("SalaryTable");
decimal total = range.Sum();
Console.WriteLine($"Named range total: {total:C}");
$vbLabelText   $csharpLabel

워크시트 검색은 워크북의 모든 시트를 열거합니다, 이는 여러 탭이 있는 파일을 처리할 때 유용합니다:

foreach (WorkSheet ws in workbook.WorkSheets)
    Console.WriteLine($"Sheet: {ws.Name}, Rows: {ws.RowCount}");
foreach (WorkSheet ws in workbook.WorkSheets)
    Console.WriteLine($"Sheet: {ws.Name}, Rows: {ws.RowCount}");
$vbLabelText   $csharpLabel

CSV 로딩은 일반 텍스트 파일에 최적화된 전용 메서드를 사용하여, 동일한 범위 API로 탐색할 수 있는 WorkSheet을 반환합니다.

WorkBook csv    = WorkBook.LoadCSV("data.csv");
WorkSheet first = csv.DefaultWorkSheet;
Console.WriteLine(first["A1"].StringValue);
WorkBook csv    = WorkBook.LoadCSV("data.csv");
WorkSheet first = csv.DefaultWorkSheet;
Console.WriteLine(first["A1"].StringValue);
$vbLabelText   $csharpLabel

이 패턴들은 데이터 마이그레이션 프로젝트, ETL 파이프라인, 자동화된 보고 시스템에서 발생하는 고급 읽기 시나리오를 다룹니다. 완전한 API 면적에 대해서는 IronXL 객체 참조를 참조하세요.

추가적인 권위 있는 참고 자료:


다음 단계는 무엇입니까?

IronXL은 복잡한 Interop 과제를 몇 줄의 간단한 C# 코드로 해결하여 Excel 파일 읽기를 종속성에서 해방시킵니다. 워크북 로드, 유형화된 값 추출, 행별 반복, 집계 계산 실행, 극단적인 경우 처리 모두 동일한 일관된 API 패턴을 따릅니다. 배포 환경 어디에도 Microsoft Office가 설치되어 있지 않습니다.

튜토리얼에서 프로덕션으로 이동하려면:

  1. 무료 체험판 시작을 통해 전체 IronXL 기능 세트를 잠금 해제하고 라이센스를 구입하기 전에 자체 Excel 파일과 비교하여 유효성을 확인하세요.
  2. 스프레드시트 작성, 형식 지정, 스타일링 및 변환에 대한 가이드를 위해 완전한 IronXL 문서를 탐색하세요.
  3. 라이브러리에서 사용 가능한 모든 클래스, 메서드 및 속성을 발견하기 위해 객체 참조 및 전체 API를 탐색하세요.
  4. 워크플로우가 입력 파일 읽기뿐 아니라 결과 파일 생성도 요구할 때 스프레드시트 생성 방법 가이드를 검토하세요.
  5. 보고서 생성, 데이터 유효성 검사 및 멀티 시트 통합 같은 실제 시나리오를 다루는 추가 튜토리얼을 위해 IronXL 블로그 포스트 인덱스를 확인하세요.

자주 묻는 질문

IronXL 이란 무엇인가요?

IronXL 개발자가 Microsoft Office를 설치하지 않고도 XLSX 및 XLS와 같은 다양한 형식의 Excel 파일을 읽고 편집하고 생성할 수 있도록 하는 .NET 라이브러리입니다.

IronXL 사용하여 C#에서 Excel 파일을 읽는 방법은 무엇입니까?

워크북을 열려면 파일 경로를 사용하여 WorkBook.Load를 호출하고, 그 다음 A1 표기법과 StringValue, IntValue, DecimalValue와 같은 형식화된 속성을 사용하여 셀에 접근하십시오.

엑셀 파일을 읽을 때 Microsoft Office Interop 대신 IronXL 선택해야 하는 이유는 무엇일까요?

IronXL Microsoft Office 설치가 필요하지 않으므로 COM 종속성이 제거되고 서버 측 배포가 간소화됩니다.

IronXL 어떤 Excel 파일 형식을 읽을 수 있습니까?

IronXL XLSX, XLS, XLSM, CSV 및 TSV 형식을 읽습니다. 파일 확장자를 기반으로 형식을 자동으로 감지합니다.

IronXL 대용량 Excel 파일을 효율적으로 처리할 수 있습니까?

네, IronXL 성능에 최적화되어 있으며 대용량 Excel 파일도 처리할 수 있어 데이터 집약적인 애플리케이션에 적합합니다.

IronXL .NET 10과 호환되나요?

네, IronXL .NET 10을 포함한 최신 .NET 버전과 .NET Framework 프로젝트를 모두 지원합니다.

IronXL 사용하여 집계 계산을 실행하는 방법은 무엇입니까?

내장된 Sum, Min, Max 및 Avg 메서드를 사용하여 모든 셀 범위를 계산할 수 있습니다. 이러한 메서드는 빈 셀을 자동으로 건너뜁니다.

IronXL 암호로 보호된 Excel 파일을 읽을 수 있습니까?

예, WorkBook.Load 메서드의 두 번째 인수로 암호를 전달하세요. 예: WorkBook.Load("file.xlsx", "password").

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

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

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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me