Po przełączeniu się na inny arkusz w Arkuszach kalkulacyjnych Google zwróć uwagę na adres URL w pasku adresu przeglądarki. Na końcu adresu URL powinieneś zobaczyć coś takiego:
#gid=0
Liczba ta zmienia się po przełączeniu arkuszy i określa, który arkusz ma zostać wyświetlony. Skopiuj cały adres URL i utwórz do niego hiperłącze za pomocą tej formuły:
=hyperlink("https://docs.google.com/spreadsheet/ccc?key=0AsaQpHJE_LShcDJ0dWNudHFZWVJqS1dvb3FLWkVrS0E#gid=0", "LINK TEXT")
Ze skryptem
Dużo myślałem o tym pytaniu, odkąd po raz pierwszy napisałem tę odpowiedź, i wymyśliłem rozwiązanie obejmujące skrypt.
Z otwartym arkuszu kalkulacyjnym, kliknij Narzędzia menu, a następnie edytor skryptów ... . Wklej cały ten kod do edytora:
function onOpen(event) {
var ss = event.source;
var menuEntries = [];
menuEntries.push({name: "Go to sheet...", functionName: "showGoToSheet"});
ss.addMenu("Tasks", menuEntries);
}
function showGoToSheet() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var allsheets = ss.getSheets();
var app = UiApp.createApplication();
app.setTitle("Go to sheet...").setWidth(800).setHeight(600);
var table = app.createFlexTable();
table.setCellPadding(5).setCellSpacing(0);
var goToSheetClick = app.createServerHandler('handleGoToSheetClick');
var widgets = [];
for (var i = 0; i < allsheets.length; i++) {
var sheet_name = allsheets[i].getName();
widgets[i] = app.createHTML(sheet_name).setId(sheet_name).addClickHandler(goToSheetClick);
table.setWidget(i, 1, widgets[i])
}
var panel = app.createSimplePanel();
panel.add(table);
app.add(panel);
ss.show(app);
}
function handleGoToSheetClick(e) {
var sheet_name = e.parameter.source;
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName(sheet_name);
sheet.activate();
var app = UiApp.getActiveApplication();
app.close();
return app;
}
Zapisz skrypt, a następnie odśwież arkusz kalkulacyjny. Po sekundzie czy dwóch pojawi się nowe menu, Zadania , po Pomocy . W tym menu jest jeden element: Przejdź do arkusza ...
Ta pozycja menu otworzy panel z listą nazw wszystkich arkuszy w bieżącym arkuszu kalkulacyjnym. Nie wygląda to tak, ale jeśli klikniesz jedną z nazw arkuszy, arkusz ten pojawi się na początku.
W odpowiedzi na inne pytanie skrypt został ulepszony o przewijalny widok i przyciski.