엑셀파일로 저장하기
/// <summary>
/// Save Excel File Method
/// </summary>
/// <param name="dt">DataTable</param>
/// <param name="strFileInfo">File Path</param>
private void SetCreateExcel(DataTable dt, string strFilePath)
{
//declaring the application
Excel.Application oAppln;
//declaring work book
Excel.Workbook oWorkBook;
//declaring worksheet
Excel.Worksheet oWorkSheet;
//declaring the range
Excel.Range oRange;
try
{
oAppln = new Excel.Application();
oWorkBook = (Excel.Workbook)(oAppln.Workbooks.Add(true));
oWorkSheet = (Excel.Worksheet)oWorkBook.ActiveSheet;
int nRow = 2;
//check for data
if (dt.Rows.Count > 0)
{
//headers
for (int nColumnIndex = 0; nColumnIndex < dt.Columns.Count; nColumnIndex++)
{
oWorkSheet.Cells[1, nColumnIndex + 1] = dt.Columns[nColumnIndex].ColumnName;
}
//inserting datas
for (int nRowIndex = 0; nRowIndex < dt.Rows.Count; nRowIndex++)
{
//in each row
for (int nColIndex = 0; nColIndex < dt.Columns.Count; nColIndex++)
{
// in each column
oWorkSheet.Cells[nRow, nColIndex + 1] = dt.Rows[nRowIndex][nColIndex].ToString();
}
//moving to next row
nRow++;
}
}
//range of the excel sheet
oRange = oWorkSheet.get_Range("A1", "IV1");
oRange.EntireColumn.AutoFit();
oAppln.UserControl = false;
// to view Excel sheet...
oAppln.Visible = false;
// to save the excel sheet....
oWorkBook.SaveAs(strFilePath, Excel.XlFileFormat.xlWorkbookNormal, null, null, false, false, Excel.XlSaveAsAccessMode.xlShared, false, false, null, null, null);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
}
네임스페이스: Microsoft.Office.Tools.Excel
어셈블리: Microsoft.Office..Interop.Excel(microsoft.office.interop.excel.dll)
public virtual void SaveAs(
[OptionalAttribute] Object Filename,
[OptionalAttribute] Object FileFormat,
[OptionalAttribute] Object Password,
[OptionalAttribute] Object WriteResPassword,
[OptionalAttribute] Object ReadOnlyRecommended,
[OptionalAttribute] Object CreateBackup,
[OptionalAttribute] XlSaveAsAccessMode AccessMode,
[OptionalAttribute] Object ConflictResolution,
[OptionalAttribute] Object AddToMru,
[OptionalAttribute] Object TextCodepage,
[OptionalAttribute] Object TextVisualLayout,
[OptionalAttribute] Object Local
)
매개 변수
Filename
저장할 파일의 이름입니다. 전체 경로를 포함시킬 수 있습니다. 전체 경로를 포함시키지 않으면 Microsoft Office Excel에서 현재 폴더에 파일을 저장합니다.
FileFormat
파일을 저장할 때 사용할 파일 형식입니다. 선택할 수 있는 형식 목록은 FileFormat 속성을 참조하십시오. 기존 파일의 경우 기본 형식은 마지막으로 지정한 파일 형식이고, 새 파일의 경우 기본 형식은 사용 중인 Excel 버전의 형식입니다.
Password
파일에 지정할 보호 암호를 나타내는 대/소문자 구분 문자열(최대 15자)입니다.
WriteResPassword
이 파일의 쓰기 예약 암호입니다. 파일이 암호를 사용하여 저장된 경우 파일을 열 때 암호를 제공하지 않으면 읽기 전용으로 열립니다.
ReadOnlyRecommended
파일을 열 때 해당 파일을 읽기 전용으로 열 것을 권하는 메시지를 표시하려면 true입니다.
CreateBackup
백업 파일을 만들려면 true입니다.
AccessMode
XlSaveAsAccessMode 값 중 하나입니다.
ConflictResolution
XlSaveConflictResolution 값 중 하나입니다.
AddToMru
해당 통합 문서를 최근에 사용한 파일 목록에 추가하려면 true입니다. 기본값은 false입니다.
TextCodepage
영어(미국) Excel에서는 사용되지 않습니다.
TextVisualLayout
영어(미국) Excel에서는 사용되지 않습니다.
Local
true이면 Excel 언어와 제어판 설정을 기반으로 파일이 저장됩니다. false(기본값)이면 VBA(Visual Basic for Applications) 언어를 기반으로 파일이 저장됩니다.