2010-02-11 5 views
2

C# 코드에서 매우 간단한 Excel 파일을 작성해야하는데 다음과 같은 질문을 보았지만 다양한 옵션이 섞여 있습니다. 어느 누구도 나에게 가장 쉽고 간단한 방법이 무엇인지 지적 할 수 있습니다. xlsx뿐만 아니라 xls에서도 실행해야합니다. 또한 내용에 따라 특정 열을 색칠하는 수식이 필요합니다.작성하여 C에서 Excel 파일에 쓰기 #

답변

2

SpreadsheetGear for .NET 만들고 XLS 물품 및 XLSX C에서 # 통합 문서와 셀의 값에 기초하여 색 셀에 사용될 수있는 조건부 형식을 지원 할 수있다.

실시간 ASP.NET 샘플 here을보고 직접 시도하고 싶다면 here 무료 평가판을 다운로드하십시오.

여기에는 0과 1000 사이의 임의의 숫자와 500보다 큰 값에 대해 배경을 파란색으로, 텍스트 색을 흰색으로 설정하는 조건부 서식이있는 통합 문서를 만드는 코드가 있습니다. Excel로 결과 통합 문서를로드 (또는하는 SpreadsheetGear 평가판 소프트웨어와 함께 설치된하는 SpreadsheetGear Windows 용 응용 프로그램에) 당신이 다시 계산 F9 키를 누를 때 발생하는주의 사항 :

using System; 
using SpreadsheetGear; 

namespace FormatConditions 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      // Create a new empty workbook. 
      IWorkbook workbook = Factory.GetWorkbook(); 
      IRange cells = workbook.Worksheets[0].Cells["A1:A5"]; 
      // Place formulas resulting in random numbers between 0 and 1000. 
      cells.Formula = "=RAND()*1000"; 
      cells.NumberFormat = "0"; 
      // Add a format condition to use blue background and white text for numbers >500. 
      IFormatCondition fc = cells.FormatConditions.Add(FormatConditionType.CellValue, FormatConditionOperator.Greater, "500", ""); 
      fc.Interior.Color = System.Drawing.Color.Navy; 
      fc.Font.Color = System.Drawing.Color.White; 
      // Save to xls and xlsx. 
      workbook.SaveAs(@"c:\tmp\FormatConditions.xls", FileFormat.Excel8); 
      workbook.SaveAs(@"c:\tmp\FormatConditions.xlsx", FileFormat.OpenXMLWorkbook); 
     } 
    } 
} 

면책 조항 : 나는하는 SpreadsheetGear LLC

0

이 파일을 클라이언트 또는 서버 측에서 만들고 있습니까? 서버 측에 있다면 자동화를 사용하지 않아야합니다. Aspose는 잘 작동하는 제품을 가지고 있습니다. Aspose라고합니다 .Cells. 그것은 비록 무료가 아니에요. 나는이 조건부 셀 색상을 변경할 수 있습니다 생각 http://npoi.codeplex.com/

- 나는 이전 스레드에서 보지 못했다 옵션의

0

하나는 NPoi했다.

몇 가지 질문 : 엑셀의

  • 버전은 지원해야합니까?
  • 이 클라이언트 측 또는 서버 측입니까?
  • Excel이 클라이언트에 설치됩니까?
2
소유

나는 Gembox.Spreadsheet을 사용했으며 간단하고 빠름을 발견했습니다. xls 및 xlsx를 지원하며 셀 스타일 및 수식을 조작 할 수 있습니다. 워크 시트 당 150 개의 행과 통합 문서 당 5 개의 워크 시트 만 지원하는 무료 버전이 있습니다.