所以我想将数据从一张工作表转移到另一张工作单。使用该代码,我传输了我想要的数据,但问题是我没有单元格的颜色和边框。
function copypaste(sourcelink, sourcesheet, soucerange, destilink, destisheet, destirange) {
var ssraw = SpreadsheetApp.openByUrl(sourcelink);
var sheetraw = ssraw.getSheetByName(sourcesheet);
var range = sheetraw.getRange(soucerange)
var data = range.getValues();
var ss = SpreadsheetApp.openByUrl(destilink);
var sheet = ss.getSheetByName(destisheet);
sheet.getRange(destirange).clearContent();
sheet.getRange(destirange).setValues(data);
}
function run() {
copypaste("link",
"Planning EDMZI",
"G10:JE130",
"link",
"Planning Export",
"G10:JE130")
}
所以,我不知道是否可以用数据的形式将数据从一张表转换到另一张表。
每个单元格的颜色并不相同,有时单元格没有任何颜色,有时单元格有特定的颜色,但这取决于用户在单元格中输入的内容。
尝试
sheet.getRange(destirange).setValues(data);
sheetraw.getRange(soucerange).copyTo(sheet.getRange(destirange), {formatOnly:true})
UPDATE,以下是我的问题的答案:我在代码中添加了这一行:
var bg = range.getBackgroundObjects();
我把它添加到我的代码中:
sheet.getRange(destirange).setValues(data).setBackgroundObject(bg);
有了它,我就有了每个单元格的数据和每个单元格对应的颜色:(