0
Я хочу скопировать некоторые столбцы на другой лист. Когда я дважды вызываю метод copyValuesToRange, один работает, а другой - нет.Вызов copyValuesToRange метод дважды
function myFunction() {
var s = SpreadsheetApp.getActiveSpreadsheet();
var target = SpreadsheetApp.openById("f3y53y54y45h45jh454");
var target_sheet = target.getSheetByName("Sheet2");
var sheet = s.getSheetByName("Sheet1");
var sheet_last_row = sheet.getLastRow() + 1;
var source_range = sheet.getRange("B1:H"+sheet_last_row);
var source_range2 = sheet.getRange("K1:P"+sheet_last_row);
var sWidth=source_range.getWidth() + 1;
var sHeight=source_range.getHeight() + 1;
var sWidth2=source_range2.getWidth() + 1;
var sHeight2=source_range2.getHeight() + 1;
var last_row=target_sheet.getLastRow();
source_range.copyValuesToRange(target_sheet , 1, sWidth, last_row + 1, last_row + sHeight);
source_range2.copyValuesToRange(target_sheet , 8, sWidth2, last_row + 1, last_row + sHeight2);
}
Как я могу исправить эту проблему или есть другое решение для копирования ячеек на другой лист.
Если вы закомментируете первый экземплярValuesToRange, второй работает? – Guy
Нет, он не работает – mutkan
sWidth2 должен быть +8, так как вы хотите сдвинуть второй диапазон вправо. Возможно, вы также захотите заменить 8 на sWidth + 1, чтобы сделать его более надежным. – Guy