尝试将已知范围的格式复制到活动选择中...
有人可以指出我要去哪里了吗?
function updateformats() {
var ss = SpreadsheetApp.getActive();
var source = ss.getSheetByName('DONOTUSE')
ss.getActiveRange().clearFormat();
var selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
source.getRange('G37:K37').copyTo(ss.getRange(selection), SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
};
我希望这是有可能的,只是不能完全正常工作。
提前感谢您的帮助。
答案 0 :(得分:1)
此修改如何?
getSelection()
返回“选择”。
ss.getRange(selection)
处发生了错误。ss
处的selection
代替SpreadsheetApp.getActiveSpreadsheet()
。 请进行以下修改,然后尝试再次运行。
从:var selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
source.getRange('G37:K37').copyTo(ss.getRange(selection), SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
var selection = ss.getSelection().getActiveRange()
source.getRange('G37:K37').copyTo(selection, SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
如果我误解了您的问题,请告诉我。我想修改它。
答案 1 :(得分:0)
您很亲密:
尝试更改此source.getRange('G37:K37').copyTo(ss.getRange(selection), SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
的最后一行
对此:
source.getRange('G37:K37').copyTo(selection.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
var selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
可以,因为Sheet类具有getSelection()方法,或者可以是var selection = SpreadsheetApp.getSelection();
甚至是var selection = ss.getSelection();
。显然,无论部署在哪里,它们都将返回用户对电子表格的选择。