SpreadsheetGear
Apparence
DataTable
// copie d'un DataTable dans un Range. Le Range doit avoir une taille suffisante.
cells[0, 0, 0 + dataTable.Rows.Count, dataTable.Columns.Count].CopyFromDataTable(dataTable, SetDataFlags.AllText);
|
Freeze
// on gèle la première colonne
worksheet.WindowInfo.ScrollColumn = 0;
worksheet.WindowInfo.SplitColumns = 1;
// on gèle les 2 premières lignes
worksheet.WindowInfo.ScrollRow = 0;
worksheet.WindowInfo.SplitRows = 2;
worksheet.WindowInfo.FreezePanes = true;
|
Créer un nouveau fichier Excel
IWorkbook workbook = Factory.GetWorkbook();
IWorksheet worksheet = workbook.Worksheets["Sheet1"];
worksheet.Name = "Worksheet Name";
workbook.SaveAs("Chemin\\Fichier.xls", FileFormat.Excel8);
|
Range
IRange cells = worksheet.Cells;
// cellule
cells["A1"];
cells[0, 0];
// zone 2D
cells["A1:C3"];
cells[0, 0, 2, 2];
// multi-zones 2D
cells["A1:A4,C1:C4"];
// colonnes A à C
cells["A:C"];
cells[0, 0, 0, 2].EntireColumn;
// lignes 1 à 3
cells["1:3"].Rows;
cells[0, 0, 2, 0].EntireRow;
|
Formula
// somme des cellules A1 à A4
range.Formula = "=SUM(A1:A4)";
|
FormulaR1C1
// adressage relatif des cellules
// somme de la cellule de gauche avec celle d'en dessous
// ex: pour la cellule B1: =A1+A2
range.FormulaR1C1 = "=RC[-1] - R[1]C";
// adressage absolu des cellules
// ex: =$D$4
range.FormulaR1C1 = "=R4C4";
|
Coloration
// passer le backgroung en gris
range.Interior.Color = SpreadsheetGear.Drawing.Color.FromArgb(192, 192, 192);
|