我试图在打开工作表时尝试获取我为Google工作表制作的脚本(因为我发现您无法通过手动触发它们移动应用)。不知何故,我设法让一半的脚本工作,而另一半没有。该脚本适用于桌面和移动设备,我希望它清除一组预定的单元格范围,同时还隐藏一组预定的行和列(用于格式化目的)。该脚本在桌面上运行完美,但即使脚本的hideRows / Columns部分,脚本的clearRanges部分也不会在移动设备上运行。关于为什么会这样的任何想法?我使用的功能如下所示:
function onOpen() {
//Create custom menu options
SpreadsheetApp.getUi().createMenu('Invoicing')
.addItem("Clear Data", "clearRange")
.addItem("Submit", "sendEmailWithPdfAttach")
.addToUi()
//Clear ranges
var source = SpreadsheetApp.getActiveSpreadsheet();
source.getRange('A23:A40').clearContent();
source.getRange('H6:I6').clearContent();
source.getRange('H8:I8').clearContent();
source.getRange('F13:F13').setValue('FALSE');
source.getRange('F15:F15').setValue('TRUE');
source.getRange('D19:I19').clearContent();
source.getRange('D23:G23').clearContent();
source.getRange('D31:G31').clearContent();
source.getRange('A42:I44').clearContent();
source.getRange('B24:G25').clearContent();
source.getRange('B28:G29').clearContent();
source.getRange('B32:G33').clearContent();
source.getRange('B35:G40').clearContent();
source.getRange('H24:H29').clearContent();
source.getRange('H32:H33').clearContent();
source.getRange('H35:H39').clearContent();
//Hide rows/columns
var sheets = source.getSheets();
sheets.forEach(function (s, i) {
if (i == sheetNum) {
s.hideRows(45, 400);
s.hideColumns(10, 17);
} else {
s.hideSheet();
}
});
}
自定义菜单选项供桌面使用,可以忽略。我还会说这是我第一次真正使用Apps脚本,而且大部分代码都来自其他地方并进行了修改。如果你们有任何关于我能做什么的线索,我会全力以赴。感谢
答案 0 :(得分:1)
SpreadsheetApp.getUi()无法在Google表格移动应用上运行。另一种方法是为Google表格创建Android附加组件。不幸的是,此时不支持Google表格的其他移动平台附加组件。
答案 1 :(得分:0)
有一个简单的解决方案,您可以在主屏幕上创建一个按钮 电子表格并将其与脚本链接!
在移动版Google Chrome浏览器上打开同一张纸