所以我应该首先说我是Javascript /编程的新手。我理解了很多,但在实际编写时我并不知道自己在做什么。
我正在尝试使用谷歌脚本,以便当我打开电子表格时,光标从最后一行开始,这样我就可以使用键盘大师和苹果脚本的组合来输入文本。问题是,我似乎无法得到任何工作。我试图使用他们在这里所拥有的东西:Faster way to find the first empty row但似乎没有任何东西能够正常运作。该函数运行没有问题,但它实际上从未做过任何事情。我已经使用了建议的函数以及一些'getLastrow'的开发人员,但没有任何用处。
我认为我已经将第二部分放下来了,为了让它在我打开文档时工作,我设置了一个'打开'的触发器,但是在我让main函数工作之前我实际上无法测试它。 / p>
非常感谢,
答案 0 :(得分:4)
The referenced question为脚本提供了对电子表格中第一个空行的引用。 (...虽然其中一些解决方案找到A列中的第一个空单元格,但不一定是空行。但我离题了。)
在可以访问用户界面的电子表格附加脚本中,您可以通过以下几种功能影响电子表格的活动视图:
Spreadsheet.setActiveRange()
Spreadsheet.setActiveSelection()
(多种口味)Sheet.activate()
Range.activate()
使用您想要识别活动电子表格中“空行”的任何技术,此功能会使用.setActiveSelection()
将选择内容移动到它:
/**
* Place the current user's cursor into the first cell of the first empty row.
*/
function selectFirstEmptyRow() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
sheet.setActiveSelection(sheet.getRange("A"+getFirstEmptyRowWholeRow()))
}
getFirstEmptyRowWholeRow()
函数,如果你很好奇:
/**
* Mogsdad's "whole row" checker.
*/
function getFirstEmptyRowWholeRow() {
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getDataRange();
var values = range.getValues();
var row = 0;
for (var row=0; row<values.length; row++) {
if (!values[row].join("")) break;
}
return (row+1);
}