我正在嘗試設定一個宏以每月運行一次以從一組公式中收集當前資料,但我很難讓它在運行復制和粘貼命令之前選擇正確的作業表。
function RecordCurrentFigures() {
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getSheetByName('Current Figures');
spreadsheet.getRange('9:9').activate();
spreadsheet.getActiveSheet().insertRowsBefore(spreadsheet.getActiveRange().getRow(), 1);
spreadsheet.getActiveRange().offset(0, 0, 1, spreadsheet.getActiveRange().getNumColumns()).activate();
spreadsheet.getRange('B9').activate();
spreadsheet.getRange('B5:F5').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
spreadsheet.getRange('B5:F5').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};
uj5u.com熱心網友回復:
我認為問題在于您正在呼叫它,但之后您沒有使用它,而是使用getActiveSheetand getActiveRange。
嘗試:
function RecordCurrentFigures() {
var spreadsheet = SpreadsheetApp.getActive();
var sheet = spreadsheet.getSheetByName('Current Figures');
var range = sheet.getRange('9:9')
sheet.insertRowsBefore(range.getRow(), 1);
// range.offset(0, 0, 1, range.getNumColumns()); // this is a NOP
var range2 = sheet.getRange('B9');
sheet.getRange('B5:F5').copyTo(range2, SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
sheet.getRange('B5:F5').copyTo(range2, SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/512527.html
標籤:谷歌应用脚本谷歌表格
