XLSX

Freeze Panes & Auto Filter

Freeze rows/columns and add auto-filter dropdowns

Freeze Panes

Freeze rows and/or columns to keep headers visible while scrolling:

{
  "worksheets": [
    {
      "name": "Sheet1",
      "freezePanes": { "row": 1 },
      "children": [
        { "cells": [{ "value": "Header 1" }, { "value": "Header 2" }] },
        { "cells": [{ "value": "Data 1" }, { "value": "Data 2" }] },
        { "cells": [{ "value": "Data 3" }, { "value": "Data 4" }] }
      ]
    }
  ]
}

Freeze both rows and columns:

{
  "worksheets": [
    {
      "name": "Sheet1",
      "freezePanes": { "row": 2, "col": 1 },
      "children": [
        { "cells": [{ "value": "Title" }, { "value": "A" }, { "value": "B" }] },
        { "cells": [{ "value": "Name" }, { "value": "Score" }, { "value": "Grade" }] },
        { "cells": [{ "value": "Alice" }, { "value": 95 }, { "value": "A" }] }
      ]
    }
  ]
}

Auto Filter

Add auto-filter dropdowns to a range of columns:

{
  "worksheets": [
    {
      "name": "Sheet1",
      "autoFilter": "A1:D4",
      "children": [
        {
          "cells": [
            { "value": "Name" },
            { "value": "Age" },
            { "value": "City" },
            { "value": "Score" }
          ]
        },
        { "cells": [{ "value": "Alice" }, { "value": 30 }, { "value": "NY" }, { "value": 95 }] },
        { "cells": [{ "value": "Bob" }, { "value": 25 }, { "value": "LA" }, { "value": 88 }] },
        { "cells": [{ "value": "Carol" }, { "value": 28 }, { "value": "SF" }, { "value": 72 }] }
      ]
    }
  ]
}

The autoFilter string specifies the cell range that will have filter dropdowns. Excel will show filter arrows on the header row.

FreezePane Options Reference

OptionTypeDescription
rownumberNumber of rows to freeze
colnumberNumber of columns to freeze
Copyright © 2026