http://qs1969.pair.com?node_id=982275

magamo has asked for the wisdom of the Perl Monks concerning the following question:

I'm trying to use a combination of Spreadsheet::ParseExcel::SaveParser and Spreadsheet::WriteExcel to modify an existing spreadsheet. I have all my modification routines so far working perfectly, including keeping color settings from the original sheet. However one thing that the original sheet has that I'd like to at least attempt to preserve in a meaningful manner is split panes.

After calling the SaveAs method, I turn around and reopen a WriteExcel worksheet method, and have it define the split panes, and found sizing that works for what I want, and have it set the right hand scroll area to a default that is meaningful for my purposes. What I cannot seem to figure out is how to set the left side of the split pane to by default display a specific column.

Right now it simply displays column A, starting at whatever row I have specified later. I'd like to be able to define that (column S for example, though ultimately I'd like to select the column programatically using routines I've already developed)

$swe_wbook=$wbook->SaveAs("$ssheet"); $worksheet = $swe_wbook->sheets($wsheetnum); $worksheet->split_panes(12.75,10,1,$namedcol);

$wsheetnum is the previously discovered index number of the worksheet we're working on, obviously. $namedcol is the column number of the first column to be displayed in the right hand side. I'd like $namedcol -1 to be the column being displayed to the left of the split. If there is further information I can provide, I'll do my best.