簡體   English   中英

我認為我在Google Apps腳本代碼中有錯誤

[英]I think I have an error in Google Apps Script code

我正在使用Google表格,並試圖創建一個菜單來允許我運行幾種腳本的選擇,但我做錯了事,但不確定什么,有人可以讀一遍,讓我知道看起來是什么嗎?錯誤? 提前致謝。

function onOpen() {
 var menu = DocumentApp.getUi().createMenu('Menu');
 menu.addItem('Compare sheets', 'compare');
 menu.addItem('Clear Formats', 'clear');
 menu.addToUi();
}

function compare() {
    var ss = SpreadsheetApp.getActive(),
        master = ss.getSheetByName('NewData'),
        newData = ss.getSheetByName('Master'),
        dif = ss.getSheetByName('Comparison'),
        rows = 500,
        columns = 52,
        bg = [],
        dateCols = [14, 24, 29, 36, 37],
        masterDataRange = master.getRange(1, 1, rows, columns),
        masterValues = masterDataRange.getValues(),
        newDataValues = newData.getRange(1, 1, rows, columns)
            .getValues();
    dif.getDataRange()
        .clear()
        .setBackground('White');
    for (var i = 0, rl = masterValues.length; i < rl; i++) {
        var r = [];
        for (var j = 0, cl = masterValues[0].length; j < cl; j++) {
            if (dateCols.indexOf(j) > -1 && i > 1) {
                if (masterValues[i][j] ) masterValues[i][j] = Utilities.formatDate(new Date(masterValues[i][j]), Session.getScriptTimeZone(), "MM/dd/yyyy HH:mm");
                if (newDataValues[i][j] ) newDataValues[i][j] = Utilities.formatDate(new Date(newDataValues[i][j]), Session.getScriptTimeZone(), "MM/dd/yyyy HH:mm");              
            }
            r.push(i < 2 ? "white" : masterValues[i][j] !== newDataValues[i][j] ? "green" : "white");
            }
         bg.push(r);
        }
    dif.getRange(1, 1, masterValues.length, masterValues[0].length)
        .setValues(masterValues)
        .setBackgrounds(bg);
}

function clear(){
 var ss = SpreadsheetApp.getActiveSpreadsheet();
 var first = ss.getSheetByName("Master");
 first.clearFormats();
 }

您正在電子表格中使用DocumentApp ,而應使用SpreadsheetApp

代碼:

function onOpen() {
 var menu = SpreadsheetApp.getUi().createMenu('Menu');
 menu.addItem('Compare sheets', 'compare');
 menu.addItem('Clear Formats', 'clear');
 menu.addToUi();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM