SnakeJkeeee, здравствуйте.
Посмотрите такой вариант:
//1-й макрос
function sborka() {
var book = SpreadsheetApp.getActiveSpreadsheet(),
iSheets = book.getSheets().length,
lr, lc, currR;
lr = book.getSheets()[0].getDataRange().getLastRow();
lc = book.getSheets()[0].getDataRange().getLastColumn();
book.getSheets()[0].getRange(2, 2, lr-1, lc-1).clearContent();
currR = 1;
for (var i = 1; i < iSheets; i++){
if(book.getSheets()[i].getDataRange().getNumRows() > 1){
lr = book.getSheets()[i].getDataRange().getLastRow();
lc = book.getSheets()[i].getDataRange().getLastColumn();
book.getSheets()[i].getRange(2, 2, lr-1, lc-1).copyTo(book.getSheets()[0].getRange(currR+1, 2), {contentsOnly:true});
currR = book.getSheets()[0].getDataRange().getLastRow();
}
}
}
//второй макрос
function kleine_Hexe(){
}
//Добавляем кнопку на ленту
function onOpen() {
var book = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [];
menuEntries.push({name: "Сборка", functionName: "sborka"});
//menuEntries.push({name: "kleine_Hexe", functionName: "kleine_Hexe"});
book.addMenu("Скрипты для сбора", menuEntries);
}
2-й макрос какой-то подозрительный, не поняла, что он делает))