- HOME
- Post in | and so on/c#
- Post at | 2012. 9. 17. 20:06 | by 밀크빵.
- View comment
C# - Excel 내용 읽어오기
Excel 내용을 읽는 것을 하고 있는데
Excel. range범위를
range = ESheet.get_Range("A1", missing); //A1 셀 선택
range = range.get_Resize(5,5) // A1부터 5,5의 크기
이런 식으로 설정 해줘야 해서.
이런 식으로는 텍스트를 읽어 올 수 있는데
내가 모든 EXCEL 파일의 셀의 크기를 알 수 없어서
읽어 오는 파일 마다 셀의 크기가 다른데 그럴 땐 어떻게 해야 하나
하루 종일 찾았다 ㅜㅜ
(엑셀에서 셀이 만들어 질 수 있는 크기까지 찾아서 모든 크기안에 있는 내용을 찾으려고 했는데
데이터가 너무 커서 오버플로우 남 ㅋ 1048576 x 16384)
셀에 대한 메서드가 따로 있어서
range를 설정 해 줄때 사용된 범위에 있는 마지막 셀을 이용하여
아무 엑셀 파일을 선택하면 텍스트를 읽어 올 수 있게 설정해 주었다.
public string ReadExcel(string path) { string filename = path;// string filename = "C:\\test.xlsx"; object missing = System.Reflection.Missing.Value; Excel.Application EApp = new Excel.Application(); Excel.Workbook EBook; Excel.Workbooks EBooks; Excel.Sheets ESheets; Excel._Worksheet ESheet; Excel.Range range; EApp.Visible = false; // EApp.WindowState = Excel.XlWindowState.xlMinimized; EBooks = EApp.Workbooks; EBook = EApp.Workbooks.Open(filename, missing, missing, missing, missing, missing, missing , missing, missing, missing, missing, missing, missing, missing, missing); ESheets = EBook.Worksheets; ESheet = (Excel._Worksheet)EBook.ActiveSheet; ESheet = (Excel._Worksheet)ESheets.get_Item(1);
range = ESheet.get_Range("A1").SpecialCells(Excel.XlCellType.xlCellTypeLastCell);
long row = range.Row;
long column = range.Column;
String valueString = "";
for (long rowCounter = 1; rowCounter <= row; rowCounter++)
{
for (long colCounter = 1; colCounter <= column; colCounter++)
{
Excel.Range cell = (Excel.Range)ESheet.Cells[rowCounter, colCounter];
if (cell.Value == null)
valueString = string.Concat(valueString, " ");
else
{
valueString = string.Concat(valueString, cell.Value.ToString() + ",");
Console.Write(valueString);
}
textBox1.Text = valueString;
}
valueString = String.Concat(valueString,"\r\n");
}
NamedRange.SpecialCells 메서드
'and so on > c#' 카테고리의 다른 글
c# 오피스 참조한 프로젝트 배포 시 필요한 dll (0) | 2013.01.07 |
---|---|
c#dll c++에서 사용 (2) | 2013.01.02 |
C++ DLL 함수 char*를 C#에서 읽어 오기 (0) | 2012.09.26 |
C# - Excel 창 접근하기 (0) | 2012.09.03 |
C# - 파일 선택 다이얼로그 띄우기 (0) | 2012.08.30 |