Google apps script 如何更改范围以包含合并的单元格?
我正试图复制并粘贴A4:J4和A5:H5,但由于A5被合并,所以出现了一个错误。第3阶段仅在第2页的G4中粘贴。如何将此数据复制并粘贴到具有合并单元格的Sheet2Google apps script 如何更改范围以包含合并的单元格?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我正试图复制并粘贴A4:J4和A5:H5,但由于A5被合并,所以出现了一个错误。第3阶段仅在第2页的G4中粘贴。如何将此数据复制并粘贴到具有合并单元格的Sheet2 function hi() { var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1'); var yourRange = sheet.getRange("A4"); var ss = SpreadsheetApp.getActiveSpread
function hi()
{
var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1');
var yourRange = sheet.getRange("A4");
var ss = SpreadsheetApp.getActiveSpreadsheet();
var destSheet = ss.getSheetByName('Sheet2');
var yourLastColumn=sheet.getRange("A4:4").getLastColumn();
var range = ss.getRangeByName("A4");
var yourLastRange=sheet.getRange("A4").offset(0, yourLastColumn-1);
var rsltRange1 = yourLastRange.getNextDataCell(SpreadsheetApp.Direction.PREVIOUS);
var rsltRange2 = sheet.getRange("A4:" + rsltRange1.getA1Notation());
if (rsltRange2.isPartOfMerge()) {
var rangeTest = rsltRange2.getMergedRanges()[0];
} else {
}
Logger.log(rangeTest.getA1Notation());
var destRange = destSheet.getRange("A4");
rsltRange2.copyTo(destRange, {contentsOnly: false});
}
以下是代码的简化版本,无论是否合并范围,都应正确复制范围:
function hi(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Sheet1');
var destSheet = ss.getSheetByName('Sheet2');
var startColumn=1;
var startRow=4;
var numRows=2;
var numColumns=sheet.getLastColumn()-startColumn+1;
var range=sheet.getRange(startRow, startColumn, numRows, numColumns);
var destRange = destSheet.getRange("A4");
range.copyTo(destRange);
}
谢谢你,zignotschka!