As far as I know there is no standard function returning the name of a sheet without your previous knowledge. The SHEET(Reference) expression returns the number of the sheet (counting the tabs e.g.)
To write a user function in BASIC for the task is simple.
You may also automate the creation of links to given cell ranges…
The jump back to the last previous selection in the index sheet is rather banal. You may assign a respctive routine to an additional element of one of the toolbars. It can’t work, however, as long as not such a selection was stored.
Using the HYPERLINK() function, you will need two cells per target range: one describing the range by its content, one creating the link with the function. Since LibO Calc has implemented the .Hyperlink
property for SheetCell objects, you can automate a process using only a single cell per target. There may be some flaws in the implementation. Not every link created that way works eaxctly as expected immediately after a reload.
The below attached demo uses the sheet events Content changed and Selection changed for both mentioned purposes. Just play with t and rework it regarding your needs.
ask214922getSheetNamesIndexAndLinkCellsToSheteRanges_1.ods
BTW: Are you sure a Calc document with more than 200 sheets is well designed (an the solution is using the appropriate tool)?