C# Excel 문서 만들기, 읽기 또는 업데이트

2023-10-31 03:25:11

Excel 스프레드시트는 사용자가 데이터를 표 형식으로 구성, 분석 및 표시할 수 있도록 널리 사용되는 파일 형식입니다. 프로그래밍 방식으로 Excel 파일과 상호 작용하는 기능은 Excel 기능을 소프트웨어 응용 프로그램에 자동화하고 통합할 수 있으므로 매우 중요합니다. 이 기능은 대규모 데이터 세트로 작업하거나, 복잡한 계산을 수행하거나, 데이터를 동적으로 생성하거나 업데이트해야 할 때 특히 유용합니다. 이 기사에서는 다음 방법을 배웁니다 Spire.XLS for .NET 사용하여 C# 및 VB.NET에서 Excel 문서를 생성, 읽기 또는 업데이트합니다.

Spire.XLS for .NET 설치

먼저 .NET 프로젝트의 참조로 Spire.XLS for .NET 패키지에 포함된 DLL 파일을 추가해야 합니다. DLL 파일은 이 링크 에서 다운로드하거나 NuGet을 통해 설치할 수 있습니다.

PM> Install-Package Spire.XLS

C#, VB.NET에서 Excel 파일 만들기

Spire.XLS for .NET는 Excel 문서를 생성하고 편집하는 데 사용할 수 있는 다양한 클래스와 인터페이스를 제공합니다. 다음은 이 기사와 관련된 중요한 클래스, 속성 및 메서드 목록입니다.

회원 설명
워크북 수업 Excel 통합 문서 모델을 나타냅니다.
Workbook.Worksheets.Add() 메서드 통합 문서에 워크시트를 추가합니다.
Workbook.SaveToFile() 메서드 통합 문서를 Excel 문서에 저장합니다.
워크시트 수업 통합 문서의 워크시트를 나타냅니다.
Worksheet.Range 속성 워크시트에서 특정 셀이나 셀 범위를 가져옵니다.
Worksheet.Range.Value 속성 셀 값을 가져오거나 설정합니다.
Worksheet.Rows 속성 워크시트의 행 컬렉션을 가져옵니다.
Worksheet.InsertDataTable() 메서드 DataTable의 데이터를 워크시트로 가져옵니다.
CellRange 클래스 워크시트의 셀 또는 셀 범위를 나타냅니다.

다음은 Spire.XLS for .NET 사용하여 처음부터 Excel 문서를 만드는 단계입니다.

  • 통합 문서 개체를 만듭니다.
  • Workbook.Worksheets.Add() 메서드를 사용하여 워크시트를 추가합니다.
  • Worksheet.Range.Value 속성을 통해 특정 셀에 데이터를 씁니다.
  • Worksheet.InsertDataTable() 메서드를 사용하여 DataTable의 데이터를 워크시트로 가져옵니다.
  • Workbook.SaveToFile() 메서드를 사용하여 통합 문서를 Excel 문서에 저장합니다.
  • C#
  • VB.NET
using Spire.Xls;
    using System.Data;
    
    namespace CreateExcelSpreadsheet
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook wb = new Workbook();
    
                //Remove default worksheets
                wb.Worksheets.Clear();
    
                //Add a worksheet and name it "Employee"
                Worksheet sheet = wb.Worksheets.Add("Employee");
    
                //Merge the cells between A1 and G1
                sheet.Range["A1:G1"].Merge();
    
                //Write data to A1 and apply formatting to it
                sheet.Range["A1"].Value = "Basic Information of Employees of Huanyu Automobile Company";
                sheet.Range["A1"].HorizontalAlignment = HorizontalAlignType.Center;
                sheet.Range["A1"].VerticalAlignment = VerticalAlignType.Center;
                sheet.Range["A1"].Style.Font.IsBold = true;
                sheet.Range["A1"].Style.Font.Size = 13F;
    
                //Set row height of the first row
                sheet.Rows[0].RowHeight = 30F;
    
                //Create a DataTable
                DataTable dt = new DataTable();
                dt.Columns.Add("Name");
                dt.Columns.Add("Gender");
                dt.Columns.Add("Birth Date");
                dt.Columns.Add("Educational Background");
                dt.Columns.Add("Contact Number");
                dt.Columns.Add("Position");
                dt.Columns.Add("ID");
                dt.Rows.Add("Allen", "Male", "1990-02-10", "Bachelor", "24756854", "Mechanic", "0021");
                dt.Rows.Add("Patrick", "Male", "1985-06-08", "Master", "59863247", "Mechanic", "0022");
                dt.Rows.Add("Jenna", "Female", "1989-11-25", "Bachelor", "79540352", "Sales", "0023");
                dt.Rows.Add("Tommy", "Male", "1988-04-16", "Master", "52014060", "Mechanic", "0024");
                dt.Rows.Add("Christina", "Female", "1998-01-21", "Bachelor", "35401489", "HR", "0025");
    
                //Import data from DataTable to worksheet
                sheet.InsertDataTable(dt, true, 2, 1, true);
    
                //Set row height of a range
                sheet.Range["A2:G7"].RowHeight = 15F;
    
                //Set column width
                sheet.Range["A2:G7"].Columns[2].ColumnWidth = 15F;
                sheet.Range["A2:G7"].Columns[3].ColumnWidth = 21F;
                sheet.Range["A2:G7"].Columns[4].ColumnWidth = 15F;
    
                //Set border style of a range
                sheet.Range["A2:G7"].BorderAround(LineStyleType.Medium);
                sheet.Range["A2:G7"].BorderInside(LineStyleType.Thin);
                sheet.Range["A2:G2"].BorderAround(LineStyleType.Medium);
                sheet.Range["A2:G7"].Borders.KnownColor = ExcelColors.Black;
    
                //Save to a .xlsx file
                wb.SaveToFile("NewSpreadsheet.xlsx", FileFormat.Version2016);
            }
        }
    }

C#/VB.NET: Create, Read, or Update Excel Documents

C#, VB.NET에서 워크시트 데이터 읽기

Worksheet.Range.Value 속성은 셀의 숫자 값 또는 텍스트 값을 문자열로 반환합니다. 전체 워크시트나 셀 범위의 데이터를 얻으려면 그 안의 셀을 반복하세요. 다음은 Spire.XLS for .NET 사용하여 워크시트의 데이터를 가져오는 단계입니다.

  • 통합 문서 개체를 만듭니다.
  • Workbook.LoadFromFile() 메서드를 사용하여 Excel 문서를 로드합니다.
  • Workbook.Worksheets[index] 속성을 통해 특정 워크시트를 가져옵니다.
  • Worksheet.AllocationRange 속성을 통해 데이터가 포함된 셀 범위를 가져옵니다.
  • 행과 열을 반복하여 범위 내의 셀을 가져오고 CellRange.Value 속성을 통해 각 셀의 값을 반환합니다.
  • C#
  • VB.NET
using Spire.Xls;
    
    namespace ReadExcelData
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook wb = new Workbook();
    
                //Load an existing Excel file
                wb.LoadFromFile(@"C:\Users\Administrator\Desktop\NewSpreadsheet.xlsx");
    
                //Get the first worksheet
                Worksheet sheet = wb.Worksheets[0];
    
                //Get the cell range containing data
                CellRange locatedRange = sheet.AllocatedRange;
    
                //Iterate through the rows
                for (int i = 0;i < locatedRange.Rows.Length;i++)
                {
                    //Iterate through the columns
                    for (int j = 0; j < locatedRange.Rows[i].ColumnCount; j++)
                    {
                        //Get data of a specific cell
                        Console.Write(locatedRange[i + 1, j + 1].Value + "  ");
    
                    }
                    Console.WriteLine();
                }
            }
        }
    }

C#/VB.NET: Create, Read, or Update Excel Documents

C#, VB.NET에서 Excel 문서 업데이트

특정 셀의 값을 변경하려면 Worksheet.Range.Value 속성을 통해 값을 다시 할당하면 됩니다. 자세한 단계는 다음과 같습니다.

  • 통합 문서 개체를 만듭니다.
  • Workbook.LoadFromFile() 메서드를 사용하여 Excel 문서를 로드합니다.
  • Workbook.Worksheets[index] 속성을 통해 특정 워크시트를 가져옵니다.
  • Worksheet.Range.Value 속성을 통해 특정 셀의 값을 변경합니다.
  • Workbook.SaveToFile() 메서드를 사용하여 통합 문서를 Excel 파일에 저장합니다.
  • C#
  • VB.NET
using Spire.Xls;
    
    namespace UpdateCellValue
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook wb = new Workbook();
    
                //Load an existing Excel file
                wb.LoadFromFile(@"C:\Users\Administrator\Desktop\NewSpreadsheet.xlsx");
    
                //Get the first worksheet
                Worksheet sheet = wb.Worksheets[0];
    
                //Change the value of a specific cell
                sheet.Range["A1"].Value = "Updated Value";
    
                //Save to file
                wb.SaveToFile("Updated.xlsx", ExcelVersion.Version2016);
            }
        }
    }

C#/VB.NET: Create, Read, or Update Excel Documents

임시 라이센스 신청

생성된 문서에서 평가 메시지를 제거하고 싶거나, 기능 제한을 없애고 싶다면 30일 평가판 라이센스 요청 자신을 위해.

또한보십시오