C#에서 Excel 파일 만들기

Muhammad Zeeshan 2023년10월12일
C#에서 Excel 파일 만들기

C# 프로그래밍 언어를 사용하여 Excel 스프레드시트를 생성하는 방법을 배웁니다.

C#에서 Excel 파일 만들기

계속 진행하기 전에 성공적인 설치를 확인하는 .NET FrameworkMicrosoft Excel 16.0 개체 라이브러리 구성 요소가 장치에 있는지 확인하십시오. 있는 경우 계속 진행할 수 있습니다.

이 프로젝트에는 Microsoft Visual Studio를 사용합니다.

참조 추가

Excel 파일을 생성하려면 Microsoft Excel 16.0 Object Library를 참조로 추가해야 합니다. 방법을 알고 싶다면 아래 단계를 따르십시오.

  1. Microsoft Visual Studio를 시작하고 새 C# 프로젝트를 만듭니다.

  2. 솔루션 탐색기에서 참조 옵션을 마우스 오른쪽 버튼으로 클릭하고 메뉴 표시줄에서 참조 추가를 클릭합니다.

    Microsoft Visual Studio - 참조 추가

  3. 새로운 작은 창이 나타납니다. 왼쪽 패널에서 COM을 선택한 다음 목록에서 Microsoft Excel 16.0 개체 라이브러리를 찾아 "확인"을 클릭합니다.

    Microsoft Visual Studio - 참조 관리자

파일 만들기

다음 예제는 COM interop을 사용하여 Excel 파일을 생성하는 방법을 보여줍니다.

  1. 시작하려면 다음 라이브러리를 가져옵니다.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
  2. interop 서비스에 액세스하기 전에 Excel 애플리케이션 개체를 초기화합니다.

    using Microsoft.Office.Interop.Excel;
    using _excel = Microsoft.Office.Interop.Excel;
    
  3. excelapp이라는 Excel 응용 프로그램을 만든 다음 WorkbookWorksheet 개체를 초기화합니다. 여기서는 각각 wbws라고 합니다.

    _Application excelapp = new _excel.Application();
    Workbook wb;
    Worksheet ws;
    
  1. CreateFile()이라는 메서드를 만듭니다. 메서드가 실행되면 하나의 워크시트만 포함하는 새 Excel 통합 문서를 생성하여 새 Excel 문서를 생성합니다.

    public void CreateFile() {
      this.wb = excelapp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
      this.ws = this.wb.Worksheets[1];
    }
    
  2. 마찬가지로 열려 있는 현재 통합 문서에 빈 워크시트를 추가하는 CreateSheet()라는 메서드를 만듭니다.

    public void CreateSheet() {
      Worksheet worksheet1 = excelapp.Worksheets.Add(After: this.ws);
    }
    
  3. 통합 문서를 사용자가 제공한 경로에 저장할 메서드를 만듭니다.

    public void SaveAs(string filepath) {
      wb.SaveAs(filepath);
    }
    
  4. Main() 메서드 내에서 Excelfile이라는 Excel 클래스의 개체를 초기화합니다.

    Excel Excelfile = new Excel();
    
  5. CreateFile() 기능을 사용하여 하나의 시트만으로 새 통합 문서를 시작합니다.

    Excelfile.CreateFile();
    
  6. CreateSheet() 기능을 사용하여 통합 문서에 새 시트를 추가합니다.

    Excelfile.CreateSheet();
    
  7. SaveAs() 기능을 사용하여 지정된 경로에 파일을 저장합니다.

    Excelfile.SaveAs(@"D:myarticle/ExcelfilebyZeeshan.xlsx");
    Excelfile.wb.Close();
    

완전한 소스 코드:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Office.Interop.Excel;
using _excel = Microsoft.Office.Interop.Excel;

namespace CreateExcelcsharpZeeshan {
  class Excel {
    _Application excelapp = new _excel.Application();
    Workbook wb;
    Worksheet ws;

    public void CreateFile() {
      this.wb = excelapp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
      this.ws = this.wb.Worksheets[1];
    }

    public void CreateSheet() {
      Worksheet worksheet1 = excelapp.Worksheets.Add(After: this.ws);
    }

    public void SaveAs(string filepath) {
      wb.SaveAs(filepath);
    }

    public static void Main(string[] args) {
      Excel Excelfile = new Excel();
      Excelfile.CreateFile();
      Excelfile.CreateSheet();
      Excelfile.SaveAs(@"D:myarticle/ExcelfilebyZeeshan.xlsx");
      Excelfile.wb.Close();
    }
  }
}

출력:

엑셀 파일을 성공적으로 만들었습니다

Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

관련 문장 - Csharp Excel