728x90
반응형
2024.03.14 - [IT/C#] - [C#] Excel 사용하기. Create Excel File + Update Excel File
(Excel 저장 방법은 위 포스팅을 참고해 주세요)
Excel 저장 시 NumberFormat 표시 형식을 지정해서 저장하는 방법입니다.
전체 소스 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
static Excel.Application excelApp = null;
static Excel.Workbook wb = null;
static Excel._Worksheet ws = null;
public static bool SaveExcelFile()
{
try
{
string sFilePath = $@"D:\123456\ExcelSaveTest.xlsx";
// 1. ExcelApp 연결
excelApp = new Excel.Application();
if (excelApp == null)
{
return false;
}
// 2. Workbook 생성
wb = excelApp.Workbooks.Add();
// 3. WorkSheet 생성
ws = (Excel.Worksheet)wb.Sheets.Add();
ws.Name = "Data";
// 4. 데이터 넣기
// 1) 일반
ws.Cells[1, 1] = "Date";
// 1행 NumberFormat 일반 형식으로 지정
ws.Rows[1].NumberFormat = "General";
// 2) 날짜
ws.Cells[2, 1] = DateTime.Now.ToString("yy/MM/dd HH:mm:ss");
// A2 NumberFormat 날짜 형식으로 지정
ws.Range["A2"].NumberFormat = "yy/m/d hh:mm:ss";
// 3) 숫자
ws.Cells[1, 2] = "Data";
ws.Cells[2, 2] = 0.0000000123;
ws.Cells[3, 2] = 0.00000000234;
ws.Cells[4, 2] = 0.000000000345;
ws.Cells[5, 2] = 0.0000000000456;
// B2 Cell부터 1행 4열 만큼 NumberFormat 지수 형식으로 지정
ws.Range["B2"].Resize[1, 4].NumberFormat = "0.00E+00";
// 4) 회계
ws.Cells[1, 3] = 97.80;
ws.Cells[2, 3] = 4527.09;
ws.Cells[3, 3] = 365087.97;
// C열 NumberFormat 회계 형식으로 지정
ws.Columns["C"].NumberFormat = "$#,###,##0.00";
// 5. Workbook 저장하고 닫기
// (참고) 덮어쓰기 경고 알람창 없애기
excelApp.DisplayAlerts = false;
wb.SaveAs(sFilePath, Excel.XlFileFormat.xlWorkbookDefault);
wb.Close(Type.Missing, Type.Missing, Type.Missing);
// 6. ExcelApp 종료
excelApp.Quit();
}
catch (Exception ex)
{
MessageBox.Show($"엑셀파일 저장 에러.");
return false;
}
finally
{
releaseObject(excelApp);
releaseObject(ws);
releaseObject(wb);
}
return true;
}
|
cs |
(참고) Microsoft 공식 문서
728x90
반응형
'IT > C#' 카테고리의 다른 글
[C#] MessageBox (혹은 Form) 열렸을 때 맨 앞으로 오게 TopMost 설정하기. (1) | 2024.05.13 |
---|---|
[C#] WinForm UI Dock Fill 도킹 이상 문제 해결방법 두 가지 (+ Dock 순서) (7) | 2024.04.12 |
[C#][Solved] Couldn't process file From '.resx' due to its being in the internet (30) | 2024.04.04 |
[C#] Excel 사용하기. Create Excel File + Update Excel File (5) | 2024.03.27 |
[C#] 파일/폴더명에 입력하면 안되는 문자 제거 (KeyPress vs. Regex) (1) | 2024.03.08 |