function saveData(){
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var formSheet = spreadsheet.getSheetByName("Receipt");
var dataSheet = spreadsheet.getSheetByName("Historical Sales")
var fieldRange = \["B12:X"\]
var fieldValue = fieldRange.map(f =\>
formSheet.getRange(f).getValue())
//console.log(fieldValue)
dataSheet.appendRow(fieldValue)
};
function exp5() {
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('W12').activate();
var currentCell = spreadsheet.getCurrentCell();
spreadsheet.getSelection().getNextDataRange(SpreadsheetApp.Direction.DOWN).activate();
currentCell.activateAsCurrentCell();
currentCell = spreadsheet.getCurrentCell();
spreadsheet.getSelection().getNextDataRange(SpreadsheetApp.Direction.PREVIOUS).activate();
currentCell.activateAsCurrentCell();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Historical Receipts'), true);
spreadsheet.getRange('X963').activate();
spreadsheet.getCurrentCell().getNextDataCell(SpreadsheetApp.Direction.PREVIOUS).activate();
spreadsheet.getCurrentCell().getNextDataCell(SpreadsheetApp.Direction.UP).activate();
spreadsheet.getRange('A14:V23').activate();
spreadsheet.getRange('Receipt!B12:W21').copyTo(spreadsheet.getActiveRange(),
SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};
CodePudding user response:
This is how I'd do it:
//Not tested, but it can give you a direction
function moveData () {
var formSheet = spreadsheet.getSheetByName("Receipt");
var formRng = formSheet.getRange(); //Specify the data range here
var formData = formRng.getValues();
var dataSheet = spreadsheet.getSheetByName("Historical Sales");
//It gets the first empty row in column A and "pastes" the data set (form Data) .
datasheet.getRange(datasheet.getLastRow() 1,1,formData.length,formData[0].length).setValues(formData);
}