Я ищу скрипт, который создаст кнопку меню, которая будет копировать и вставлять данные из листа «Открытые заказы» A3: B в последнюю пустую строку листа «Потянул», где A: B пусто, и убедиться, что естьбез дубликатов. Мне нужно, чтобы данные тоже оставались на листе "Открытые заказы".
У меня нет опыта работы со сценариями, и все, что я пытался посмотреть на Google, не работает или не то, что я ищу.
function copytestdata() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("Open Orders");
var sheet2 = ss.getSheetByName("Pulled");
sheet1.getRange("A3:B1000").copyTo(sheet2.getRange(sheet2.getLastRow()+1,1,1,2),
{contentsOnly:true});
}
РЕДАКТИРОВАТЬ
Я нашел этот код в одном из моих старых листов, который делает что-то похожее, но не совсем то, что я хочу, и я не уверен, как его изменить.
Изменение, которое я сделал в этомявляется то, что я обновил имя листа, но он копирует всю строку и вставляет его в строку 969 на листе «Потянул».
Я просто хочу, чтобы столбцы A и B были скопированы и вставлены, а в следующей пустой строке, где A & B пусты, у меня есть формулы в столбцах C: H
function moveToPulled() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var range = sheet.getActiveRange();
var values = range.getValues();
var targetSheet = ss.getSheetByName('Pulled');
var numColumns = sheet.getLastColumn();
var numRows = values.length;
var row = range.getRow();
var rowText = ' row';
if (numRows > 1) {
rowText = rowText + 's'
};
if (row !== 1) {
var theButton = Browser.msgBox('Please confirm the move...', 'Are you sure you want to move ' + numRows + rowText + ' to Pulled?', Browser.Buttons.YES_NO);
if (theButton == 'yes') {
var range = sheet.getRange('A1');
sheet.setActiveRange(range);
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
sheet.getRange(row, 1, numRows, numColumns).copyTo(target);
ss.setActiveSheet(sheet);
SpreadsheetApp.flush();
ss.toast('Moved ' + numRows + rowText + ' to the \'Needs To Ship\' sheet.','ALL DONE...');
}else {
ss.toast('Move along, nothing to see here...','Alrighty then...');
}
}else {
Browser.msgBox('NOT GONNA DO IT!', 'I refuse to move the selected ' + rowText + '. Please reconsider and try again. Have a nice day ...LOL', Browser.Buttons.OK);
}
}