我有一个正在处理的电子表格,我正在编写代码以复制选择的选项卡,并将它们作为值/格式粘贴到新的工作簿中,以便与用户共享并允许他们编辑某些字段。我需要将数据移到新的工作表中,因为我的数据表中包含QUERY()
个函数,这些函数我不想让用户打断,但我希望用户能够根据需要进行过滤和添加注释。我无法正常工作的最后一步是条带/替代颜色格式。它们显然不会保存为背景色,因此不会被复制。
function exportToDashboard() {
var fromSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var toSpreadsheet = SpreadsheetApp.openByUrl(
"myURL"
);
var fromSheet = fromSpreadsheet.getSheetByName("Contact Summary.DASH");
var toSheet = toSpreadsheet.getSheetByName("Contact Summary.DASH");
var fromRange = fromSheet.getRange("A1:E");
var values = fromRange.getValues();
// var banding = fromRange.getBandings();
var colors = fromRange.getFontColors();
var fontstyle = fromRange.getFontWeights();
var fontsizes = fromRange.getFontSizes();
var toRange = toSheet.getRange(1,1,values.length,values[0].length);
toRange.clearContent();
toRange.getBandings().forEach(function (banding) {
banding.remove();
});
toRange.setValues(values);
// toRange.applyRowBanding(SpreadsheetApp.BandingTheme.GREEN);
toRange.setFontColors(colors);
toRange.setFontSizes(fontsizes);
toRange.setFontWeights(fontstyle);
我希望保留源带,但是当我尝试使用定义的变量banding
时,applyRowBanding()
函数将不起作用并给出错误。我可以使用applyRowBanding
(SpreadsheetApp.BandingTheme.GREEN)来应用所需的带状主题,但它不仅适用于整个列,而且还适用于我的数据(我希望其保留的位置)。由于交替颜色格式不会存储为单元格背景色,因此我无法复制该格式并将其粘贴到任何一种格式。
真的,我只想复制或设置数据条带。