Repository navigation
Freeze and Split Panes
This page has moved. The current version of this page is at https://epplussoftware.com/docs/worksheet-and-ranges/worksheets/freeze-and-split-panes/. The EPPlus documentation is no longer updated in this wiki; please use the EPPlus guides and update your bookmarks.
In Excel you can Freeze or Split the worksheet in separate panes to either freeze columns or rows or divide the worksheet into different views.
To freeze a row/column to fix the headings you use the worksheet.View.FreezePanes method.
This sample is taken from Sample 3.4. See Sample 3.4-C# or Sample 3.4-VB:
// Headers
ws.Cells["B1"].Value = "Name";
ws.Cells["C1"].Value = "Size";
ws.Cells["D1"].Value = "Created";
ws.Cells["E1"].Value = "Last modified";
ws.Cells["B1:E1"].Style.Font.Bold = true;
ws.View.FreezePanes(2, 1);
This example will freeze the panes above and to the left of cell A2 in the worksheet, in this case freezing row one.
In EPPlus, setting the top-left cell, e.g. via:
ws.View.FreezePanes(1,1)
clears the freeze panes from the sheet.
This differs from Excel, where freezing the top-left visible cell creates panes dividing the Excel program window into 4 equal panes.
Result of freezing A1 in Excel with a small window size causing 10x10 visible cells
Please note that freeze panes with F6 selected would in this case achieve the same result.
As EPPlus has no UI window, we have no window size or visible cells to refer to. Therefore EPPlus instead calls ws.View.UnfreezePanes().
EPPlus can, however, achieve the same result as in the above scenario by using:
ws.View.FreezePanes(6,6)
You can also split the spreadsheet window into two or four panes that are scrollable and resizable.
EPPlus can do this by using the worksheet.View.SplitPanes or worksheet.View.SplitPanesPixel methods.
The SplitPanes method will split the window using a row/column input. The SplitPanesPixel method will split the panes using a coordinate in pixels.
This sample will split the window into two panes after the fourth visible row and the third visible column:
ws.View.SplitPanes(4, 3);
If you only want to split horizontally or vertically, set the visible row or column to zero:
ws.View.SplitPanes(4, 0);
EPPlus Software AB - https://epplussoftware.com
- What is new in EPPlus 5+
- Breaking Changes in EPPlus 5
- Breaking Changes in EPPlus 6
- Breaking Changes in EPPlus 7
- Breaking Changes in EPPlus 8
- Addressing a worksheet
- Dimension/Used range
- Copying ranges/sheets
- Insert/Delete
- Filling ranges
- Sorting ranges
- Taking and skipping columns/rows
- Data validation
- Comments
- Freeze and Split Panes
- Header and Footer
- Hyperlinks
- Autofit columns
- Grouping and Ungrouping Rows and Columns
- Formatting and styling
- The ExcelRange.Text property
- Conditional formatting
- Using Themes
- Working with custom named table- or slicer- styles
-
Formula Calculation
- Security considerations
- Circular references
- Referencing tables in formulas
- Supported Functions
- Dynamic array formulas
- Legacy array formulas
- Lambda functions
- Regression analysis functions
- Custom functions for calculations
- Function prefixes
- Precision as Displayed
- Cancelling a calculation
- Trim reference operator
- Working with filters
- Working with slicers
- Working with External Workbooks