C\#WinFrom 내 보 내기 Excel 프로 세 스 분석
DataGridView 형식 으로 내 보 내 고 NPOI.dll 을 사용 합 니 다.
1.DataGridView 를 사용 하기 때문에 클래스 는 From 의 Project 에서 만 들 고 DLL 은 NPOI 를 가 져 와 야 합 니 다.
2.코드 는 다음 과 같다
ExportExcel
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using NPOI.SS.UserModel; //NPOI
using NPOI.HSSF.Util; //NPOI
using NPOI.HSSF.UserModel; //NPOI
using NPOI.XSSF.UserModel; //NPOI
using System.IO;
namespace ESMT
{
public class ExportExcel
{
/// <summary>
///
/// </summary>
/// <param name="grdview"> </param>
/// <param name="sheetName"> </param>
/// <param name="FilePath"> </param>
/// <param name="columnTitle"> </param>
public void ExportToExcel(DataGridView grdview, string sheetName, string FilePath, string[] columnTitle)
{
// dataGridView ,
grdview.AllowUserToAddRows = false;
HSSFWorkbook workbook = new HSSFWorkbook();
ISheet sheet = workbook.CreateSheet(sheetName);//
//
IRow headerRow = sheet.CreateRow(0);//
headerRow.HeightInPoints = 40;
headerRow.CreateCell(0).SetCellValue(" ");//
ICellStyle headStyle = workbook.CreateCellStyle();
headStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;//
IFont font = workbook.CreateFont();
font.Boldweight = 500;
font.FontHeightInPoints = 20;
headStyle.SetFont(font);
headerRow.GetCell(0).CellStyle = headStyle;
sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(0, 0, 0, grdview.ColumnCount - 2));//
IRow headerRow2 = sheet.CreateRow(1);//
ICellStyle headStyle2 = workbook.CreateCellStyle();
headStyle2.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
IFont font2 = workbook.CreateFont();
font2.FontHeightInPoints = 10;
font2.Boldweight = 700;
headStyle2.SetFont(font2);
for (int l = 0; l < grdview.ColumnCount - 1; l++) //
{
headerRow2.CreateCell(l).SetCellValue(columnTitle[l]);
headerRow2.GetCell(l).CellStyle = headStyle2;
}
//
for (int l = 0; l < grdview.Columns.Count; l++)
{
sheet.DefaultColumnWidth = 15;
}
//
for (int i = 0; i < grdview.Rows.Count; i++)
{
IRow row = sheet.CreateRow(i + 2);
for (int j = 1; j < grdview.Columns.Count; j++)
{
row.CreateCell(j - 1, CellType.String).SetCellValue(grdview.Rows[i].Cells[j].Value.ToString());//j-1
}
}
using (FileStream stream = File.OpenWrite(FilePath))// Excel
{
workbook.Write(stream);
stream.Close();
}
GC.Collect();
}
}
}
PS:openwtrie 에서 새 파일 을 열 거나 만 들 거나 기록 합 니 다.3.From 창 내 보 내기 버튼 클릭
내 보 내기 단추
string[] columnTitle = { " ", " ", "Facility", " ", " ", " ID", " ", " ", "Date Code/Lot", " ", " ", " " };
string localFilePath = "";// fileNameExt, newFileName, FilePath;
SaveFileDialog sfd = new SaveFileDialog();//
//
sfd.Filter = "Excel(97-2003)|*.xls";// EXCEL
//
sfd.RestoreDirectory = true;
//
if (sfd.ShowDialog() == DialogResult.OK)
{
localFilePath = sfd.FileName.ToString(); //
ex.ExportToExcel(grdData, " ", localFilePath, columnTitle);
}
위 세 단 계 를 통 해 내 보 내기 단 추 를 누 른 후 저장 위 치 를 선택 하고 이름 을 짓 고 EportExcel 방법 으로 내 보 내기 Excel 을 완성 합 니 다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
C#Task를 사용하여 비동기식 작업을 수행하는 방법라인이 완성된 후에 이 라인을 다시 시작할 수 없습니다.반대로 조인(Join)만 결합할 수 있습니다 (프로세스가 현재 라인을 막습니다). 임무는 조합할 수 있는 것이다. 연장을 사용하여 그것들을 한데 연결시키는 것이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.