Google 传播 sheet 超链接到 RETURN 到特定 sheet 上的原始位置按下跳转按钮后
Google spreadsheet hyperlink to RETURN TO original location on a specific sheet after a jump button pressed
我正在尝试确定是否可以在 google sheet 上编写一个脚本,让 return 用户访问 sheet 上的特定单元格他们来自哪里。这将是这样的代码的扩展:
function gotolocation2() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("location2");
ss.setActiveSheet(sheet).setActiveSelection("A1");
}
假设用户点击跳转到此处,然后想 return 到他们所在的位置(即 location1)。我试图弄清楚如何做到这一点——以某种方式引用他们在初始函数中留下的 location1 形式?或者有没有办法通过 API 来做到这一点?这类似于可以添加到工具栏的 MS Excel 'back' 'forward' 按钮。
显然,我认为这将限于同一 google 传播中的标签sheet(?)
感谢您的帮助!
您可以将最后一个活动单元格写入属性服务,然后 return 写入该单元格。
function gotolocation2() {
var properties = PropertiesService.getUserProperties();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var active = SpreadsheetApp.getActiveRange();
properties.setProperty("sheet", active.getSheet().getName())
properties.setProperty("cell", active.getA1Notation());
ss.getSheetByName("Sheet2").getRange("A1").activate();
}
function gotolocation1() {
var properties = PropertiesService.getUserProperties();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var active = SpreadsheetApp.getActiveRange();
var sheet = properties.getProperty("sheet");
var cell = properties.getProperty("cell");
ss.getSheetByName(sheet).getRange(cell).activate();
}
我正在尝试确定是否可以在 google sheet 上编写一个脚本,让 return 用户访问 sheet 上的特定单元格他们来自哪里。这将是这样的代码的扩展:
function gotolocation2() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("location2");
ss.setActiveSheet(sheet).setActiveSelection("A1");
}
假设用户点击跳转到此处,然后想 return 到他们所在的位置(即 location1)。我试图弄清楚如何做到这一点——以某种方式引用他们在初始函数中留下的 location1 形式?或者有没有办法通过 API 来做到这一点?这类似于可以添加到工具栏的 MS Excel 'back' 'forward' 按钮。
显然,我认为这将限于同一 google 传播中的标签sheet(?)
感谢您的帮助!
您可以将最后一个活动单元格写入属性服务,然后 return 写入该单元格。
function gotolocation2() {
var properties = PropertiesService.getUserProperties();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var active = SpreadsheetApp.getActiveRange();
properties.setProperty("sheet", active.getSheet().getName())
properties.setProperty("cell", active.getA1Notation());
ss.getSheetByName("Sheet2").getRange("A1").activate();
}
function gotolocation1() {
var properties = PropertiesService.getUserProperties();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var active = SpreadsheetApp.getActiveRange();
var sheet = properties.getProperty("sheet");
var cell = properties.getProperty("cell");
ss.getSheetByName(sheet).getRange(cell).activate();
}