How to scroll all libreoffice calc spreadsheet sheets together. (Or other ~3D-like ideas) -
i have simple idea of i'm looking for, i'm not sure how explain clearly, apologies in advance!
i "3d" spreadsheet, aim of having main entries in normal 2d cells , (potentially just-as-important) entries in third dimension above each cell. multiple sheets allow for, problem cannot see 3rd dimension cells @ once.
i first hoping find sophisticated method of using actual 3d sheets no luck far. realised if make sure other sheets line first sheet enough, "scroll" along third dimension switching between sheets.
so, there way scroll sheets together? such if scroll down on sheet 1 see cell 123 a, when switch sheet 2, cell 123 in same position on screen, , on sheets 3 , up.
if impossible has suggestions different solution (even using different program (on linux)) great.
many thanks!
here complete working solution in openoffice basic:
global oldsheet object global handlingactivationevent boolean sub registermyactivationeventlistener olistener = createunolistener( _ "activlistener_", "com.sun.star.sheet.xactivationeventlistener" ) ocontroller = thiscomponent.currentcontroller ocontroller.addactivationeventlistener(olistener) oldsheet = ocontroller.activesheet handlingactivationevent = false msgbox "now listening" end sub sub activlistener_activespreadsheetchanged( oevent ) if handlingactivationevent exit sub end if handlingactivationevent = true ocontroller = thiscomponent.currentcontroller newsheet = ocontroller.activesheet ocontroller.setactivesheet(oldsheet) col = ocontroller.getfirstvisiblecolumn() row = ocontroller.getfirstvisiblerow() ocontroller.setactivesheet(newsheet) ocontroller.setfirstvisiblecolumn(col) ocontroller.setfirstvisiblerow(row) 'msgbox col & ", " & row oldsheet = newsheet handlingactivationevent = false end sub
to make work, go tools -> customize
. in events tab, assign registermyactivationeventlistener
open document
event.
explanation of code:
instead of scrolling sheets @ same time, scrolls appropriate cell whenever different sheet activated. uses xviewpane interface see previous sheet scrolled, , scrolls next sheet same spot.
to find out when sheet gets activated, code uses an event listener xactivationeventlistener interface.
Comments
Post a Comment