Если через Google Script:
let ss = SpreadsheetApp.getActiveSpreadsheet();
let zayvkaSheet = ss.getSheetByName('Заявки'); //или как нужно лист назвать
let doSheet = ss.getSheetByName('Выполнено');
function onEdit(e) {
let cell = e.range;
if (cell.getSheet().getSheetName() === zayvkaSheet.getSheetName()){ // проверка на то, что изменение происходит именно на листе со списком заявок
if (cell.getValue() === 'Выполнено'){
zayvkaSheet.getRange(cell.getRow(), 1, 1, zayvkaSheet.getLastColumn()).copyTo(doSheet.getRange(doSheet.getLastRow() + 1, 1)); //перенос на другой лист
zayvkaSheet.deleteRow(cell.getRow()); // удаление строки из листа
}
}
}
Добавьте, сохраните, запустите один раз через редактор скриптов (он попросит разрешение на изменение текста в таблице) и все
так же добавьте проверку данных для выпадающих списков