我似乎无法在Google工作表中使用这段代码,任何指针将不胜感激:)
如果我在“设置”工作表上并在F9:F19范围内更改值,那么我需要保存F9:F19的值(在“结果”数组中),在“数组”中打开相应的工作表“ SheetsList”,并将F9:F19中的相应值粘贴到单元格C34。
即“设置F9”->“ 1s C34”,“设置F10”->“ 2s C34”,“设置F11”->“ 3s C34” ...等等
function rsltButton() {
var activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName();
var dataSheet = SpreadsheetApp.getActive().getSheetByName("SETTINGS");
var Results = dataSheet.getRange(9, 6, 11).getValues();
var rslt = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(34, 3).getValue();
var SheetsList = ['1s','2s','3s','4s','5s','PG','GS','W2s','W3s','BS','U15s'];
if (activeSheet === "SETTINGS"){
for (i=0; i<11; i++){
SpreadsheetApp.getActive().getSheetByName(SheetsList[i]).getRange(34, 3).setValue(Results[i]);
}
}
}
但是上面的脚本不会对“ SheetList”数组中的Sheets造成任何更改。
答案 0 :(得分:0)
我们需要在for
中包含var
statement才能使用i
迭代器。最终代码应类似于以下内容:
function rsltButton() {
var activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
.getName();
var dataSheet = SpreadsheetApp.getActive().getSheetByName("SETTINGS");
var Results = dataSheet.getRange(9, 6, 11).getValues();
var rslt = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(34,
3).getValue();
var SheetsList = ['1s', '2s', '3s', '4s', '5s', 'PG', 'GS', 'W2s', 'W3s',
'BS', 'U15s'
];
if (activeSheet === "SETTINGS") {
for (var i = 0; i < 11; i++) {
SpreadsheetApp.getActive().getSheetByName(SheetsList[i]).getRange(34, 3)
.setValue(Results[i]);
}
}
}
我希望这对您有用。请不要犹豫,向我们提供更多信息以寻求进一步的帮助。