Skip to content

Freeze and Split Panes

Mats Alm edited this page Nov 10, 2026 · 20 revisions

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.

Freeze panes

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.

About FreezePanes(1,1)

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)

Split panes

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);

See also

EPPlus wiki

Versions

Worksheet & Ranges

Styling

Import/Export data

Formulas and filters

Charts & Drawing objects

Tables & Pivot Tables

VBA & Protection

Clone this wiki locally

⌂ 换网址