Ви не можете заморозити середній ряд, не отримавши рядки над ним також замороженими.
Скажімо, у вас 100 рядків, а ваш рядок заголовка знаходиться в рядку 50. Ви можете очікувати, що лише рядок 50 заблокується, щоб при прокрутці з рядка 1-49 все прокручувалося вгору, а коли воно досягне рядка 50, 50-й рядок прокручується до зверху і залишається там, коли прокручуються рядки 51-100.
Але є обхідний шлях. Що ви можете зробити, це згрупувати рядки, а потім заморозити їх.
Спочатку згрупуйте рядки з 1-49, а потім заморожте панелі з 1-50. Тепер користувач може згорнути групу, а потім працювати з таблицею із заблокованим заголовком таблиці та вгорі.
sheet.groupRow(0, 49);
sheet.createFreezePane(0, 50);
Хоча є невеликий улов. MS Excel не дозволяє розгорнути / згорнути групу, якщо аркуш захищений. Для цього потрібно написати макрос.