Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0
Wiki Markup
Whenever you change the Cell.Style property, that Cell gets its own Style object. However, if you create a new Style object and then call {{SetStyle}} or {{ApplyStyle}} on the area ([Area.ApplyStyle(Style)], [Area.SetStyle(Style)]) or range ([Range.ApplyStyle(Style)], [Range.SetStyle(Style)]) you want to affect, ExcelApplication will not have to create a seperate Style object for each cell, reducing the amount of memory that is needed. For example, if you are applying the same style to more than one or two cells, you should say:

...

Csharp
11

 
{csharp:1}
//Create a global style
GlobalStyle style = wb.CreateStyle();

//Set a cell's style to the new global style
ws.Cells[0,0].Style = style;

//Set an area's style to the new global style
ws.CreateArea(1,1,5,5).SetStyle(style);

//Set a range's style to the new global style
ws.CreateRange("D5:E6").SetStyle(style);
Vbnet
11'Create a global style
Dim style As GlobalStyle =
{csharp}

{vbnet:1}
'Create a global style
Dim style As GlobalStyle = wb.CreateStyle()


'Set a cell's style to the new global style


ws.Cells(0, 0).Style = style


'Set an area's style to the new global style


ws.CreateArea(1, 1, 5, 5).SetStyle(style)


'Set a range's style to the new global style


ws.CreateRange("D5:E6").SetStyle(style)

{vbnet}

Alternatively, if you want to apply a single style to all the cells in a column, you can get the ColumnProperties object for that column and call its SetStyle method:

...


{csharp
:2
2
}
//Get the properties for the column you want to alter
ColumnProperties properties = ws.GetColumnProperties(0);

//Apply a style to that column
properties.ApplyStyle(style);
Vbnet
22'Get the properties for the column you want to alter
Dim properties As ColumnProperties =
{csharp}

{vbnet:2}
'Get the properties for the column you want to alter
Dim properties As ColumnProperties = ws.GetColumnProperties(0)


'Apply a style to that column


properties.ApplyStyle(style)

Excerpt

Using one of these two techniques to apply styles will use less memory than creating a new style for each cell or modifying the Cell.Style property directly.

...


{vbnet}

{excerpt} Using one of these two techniques to apply styles will use less memory than creating a new style for each cell or modifying the Cell.Style property directly.{excerpt}

For more information about using Styles in ExcelWriter, please refer to our tutorial [Styles in ExcelWriter].