일정 템플릿에 대한 보관 기능을 만들고 있습니다.
다음 코드를 통해 작동하도록했습니다.
// https://developers.google.com/apps-script/reference/spreadsheet/range
function copySchedule2() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var source = ss.getSheets()[3];
var destination = ss.getSheets()[4];
var range = source.getRange("A1:X64");
range.copyFormatToRange(destination, 1, 26, 1, 64);
range.copyValuesToRange(destination, 1, 26, 1, 64);
}
그러나 이것은 지속적인 아카이브이므로 이전 아카이브의 맨 아래에 각 주 일정을 추가하려고합니다. 이 코드를 시도했습니다.
function copySchedule() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var source = ss.getSheets()[3];
var destination = ss.getSheets()[4];
var range = source.getRange("A1:X64");
source.getRange("A:X").copyTo(destination.getRange(destination.getLastRow()+1));
}
하지만 오류가 발생합니다.
[15-10-26 17:24:28:093 EDT] Starting execution
[15-10-26 17:24:28:099 EDT] SpreadsheetApp.getActiveSpreadsheet() [0 seconds]
[15-10-26 17:24:28:191 EDT] Spreadsheet.getSheets() [0.092 seconds]
[15-10-26 17:24:28:193 EDT] Spreadsheet.getSheets() [0.001 seconds]
[15-10-26 17:24:28:243 EDT] Sheet.getRange([A1:X64]) [0.049 seconds]
[15-10-26 17:24:28:302 EDT] Execution failed: Cannot convert function FindRows() { destinationRange = SpreadhseetApp.getActiveSpreadsheet().getSheets()[4].getLastRow(); return destinationRange; } 1 to (class). (line 36, file "Copy v0.5") [0.146 seconds total runtime]
나는 JS를 처음 접했기 때문에 누군가가 나를 올바른 방향으로 가리킬 수 있습니다. 내가 무엇을 놓치고 있습니까?
copyTo ()는 데이터를 붙여 넣을 위치를 알기 위해 셀에 대한 참조가 필요합니다. getLastRow ()가 숫자를 반환하므로 행 번호를 제공합니다.
, 1을 추가하여 A 열에 붙여 넣기를 시작하도록합니다.
source.getRange("A:X").copyTo(destination.getRange(destination.getLastRow()+1, 1));
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다