2012-07-18 2 views
1

Excel에서 데이터 테이블을 가져와 내 포함 파일 SpreadsheetGear.WorkbookView으로 가져 오는 응용 프로그램이 있습니다. Excel에서 워크 시트의 크기 제한에 대해 알고 있지만 Excel에서 SpreadsheetGear보다 큰 데이터 집합을 처리 할 수 ​​있는지 궁금합니다. 전에이 사람을 본 사람 있습니까?SpreadsheetGear WorkbookView에 보관할 수있는 데이터의 양에는 제한이 있습니까?

제이크

답변

1

은 그냥 .NET 4.5의 x64 응용 프로그램에서 .NET 실행을 위해하는 SpreadsheetGear 2012 테스트를하고 엑셀 2013의 x64 RTM은 모두 오버 클럭 된 코어 i7-980X와 윈도우 8의 x64에서 실행.

수식 ("= RAND()"수식을 사용하여 1,000,000 개의 행과 10 개의 수식이있는 통합 문서를 만들었습니다.

Excel 2013에서 20.18 초 안에 통합 문서를 만들었으며 795MB의 RAM을 사용했으며 0.39 초 계산했습니다.

2012 년 통합 문서를 만들 때 0.42 초, 153MB의 RAM이 사용되며 0.09 초 계산됩니다.

SpreadsheetGear는 메모리 사용량에 의해서만 제한되며 Excel 사용률은 Excel 2013보다 빠르며 SpreadsheetGear 2012는 Excel 2013보다 더 빠른 속도로 대형 통합 문서를 만들고 계산합니다. 케이스.

.NET 용 SpreadsheetGear here의 무료 평가판을 다운로드 할 수 있습니다.

면책 조항 : 소유주가 SpreadsheetGear LLC입니다.

using System; 
    using SpreadsheetGear; 

    namespace SpreadsheetGearMemTest 
    { 
     class Program 
     { 
      static void Test(IWorkbook workbook, int rows, int cols) 
      { 
       var worksheet = workbook.Worksheets[0]; 
       var cells = worksheet.Cells; 
       var timer = System.Diagnostics.Stopwatch.StartNew(); 
       var startMem = System.GC.GetTotalMemory(true); 
       cells[0, 0, rows - 1, cols - 1].Formula = "=RAND()"; 
       timer.Stop(); 
       var memUsed = System.GC.GetTotalMemory(true) - startMem; 
       var calcTimer = System.Diagnostics.Stopwatch.StartNew(); 
       workbook.WorkbookSet.Calculate(); 
       Console.WriteLine("Creating took {0} seconds and {1}MB, calc took {2} seconds.", 
        timer.Elapsed.TotalSeconds, memUsed/(1024.0 * 1024.0), calcTimer.Elapsed.TotalSeconds); 
       workbook.Close(); 
      } 

      static void Main(string[] args) 
      { 
       // Get the code JITed. 
       Test(Factory.GetWorkbook(), 100, 10); 
       // Do the test. 
       Test(Factory.GetWorkbook(), 1000000, 10); 
      } 
     } 
    } 
+0

당신의 응답을 주셔서 감사합니다 :

여기에 내가하는 SpreadsheetGear 위해 실행 된 코드입니다! WorkbookView로 데이터를 가져 오는 것이 스프레드 시트 크기 제한 이외의 다른 이유로 응용 프로그램을 왜곡시키는 이유를 자세히 조사 할 것입니다. 하지만 너는 나를 위해 그것을 확실히 좁혔다. 정말 감사! 내가 찾은 것이 무엇이든 유용하게 보이면, 나는 재 게시 할 것이다. –

관련 문제