Google Sheets – Get Frozen Rows in Embedded Sheets

embedgoogle sheets

I have a 400 row sheet embedded in a web page. I would like the header row to be frozen, as it is in the original sheet. So far I've been unable to discover any parameter to allows this, but also I've not been able to discover any source of current parameters.

On Google product forums there are various solutions, but so far all of the ones I've found predate the major changes in sheets that took place is 2013.

My current sheet is embedded as follows:

<iframe height='1000px'  src="https://docs.google.com/spreadsheets
/d/10u28L2gCe6wSdAZWwXRMZKi90M7dNYQrCcyE_QWEOZw/pubhtml?gid=1276723055
&amp;single=true&amp;widget=false&amp;headers=false&amp;rm=minimal">
</iframe>

I have added line breaks so that you don't need to scroll.

AFAIK widget=false/true no longer controls the appearance/disappearance of the file/sheet name. rm=minimal only works on link shared sheets. I've tried true, false and 1 for headers with no effect.

I would also like to strip column letters and row numbers, another feature that seems to have vanished at the UI change.

How can I keep my header rows in an embedded sheet?

Anyone have a link to the current parameters that an embedded sheet takes?

Best Answer

Well, if don't see the solution, you can write it :)

I created a Python application that can be deployed in Google Cloud (and will work within free quota unless under heavy load).

If you deploy it to your-foo-app.appspot.com (which is really simple), and your published spreadsheet is https://docs.google.com/spreadsheets/d/Bar12345/pubhtml?gid=67890, than your-foo-app.appspot.com/Bar12345/67890 will provide link to the scrollable-with-frozen-rows version of published sheet, and your-foo-app.appspot.com/Bar12345/ will provide the whole spreadsheet with improvised switching tabs. Works in modern browsers.

Here is the working version of the app. Just don't use it in production, because it may get overloaded; deploy your own copy instead.