简体   繁体   English

我需要将可变范围的数据复制到另一张纸的新空行中。 我需要如何更改这些脚本?

[英]I need to copy variable range of data into a new empty row of another sheet. How do I need to change those scripts?

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);
};

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);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Google脚本:如何将范围复制并粘贴到不为空的行中的新表中 - Google Script: How to copy and paste range to a new sheet on a row that is not empty 我需要将这些变量保持在全局范围内吗? - Do I need to keep those variables global? 进行编辑后,如何将范围从一个Google表格复制到另一个表格? - How do I copy a range from one Google Sheet to another when edits are made? 需要将另一张纸中的格式和值都复制到空白的下一行 - Need to copy both the format and values in another sheet to the next row that is blank 将特定范围复制到从一个工作表到另一个工作表中的第一个空行和特定列 - Copy a specific range to from one sheet to the first empty row and specific column in another sheet 什么时候需要在 function 中创建一个新变量? - When do I need to create a new variable within a function? 我是否需要为此表更改或添加新数组才能在 Javascript 中工作? - Do I need change or add new array for this table to work in Javascript? 如何将范围从一个工作表复制到另一工作表的范围,然后重复复制到下一行 - How to copy a range from one sheet to a range in another sheet, then repeat copying to the next row down 在我将一系列数据从一张纸复制到另一张纸后获取要添加的日期戳 - Getting a date stamp to add in after i copy a range of data from one sheet to another 当我需要的数据在全局 scope 中时,如何在另一个 function 中调用 function? - How do I call a function within another function when the data I need is in the global scope?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM