AppsScript:TurnGoogleSheetFormulaIntoACallbackFunction
创始人
2024-11-10 08:30:28
0

在Google Sheet中,我们经常使用公式来计算单元格的值。但是,有时候我们需要将这些公式嵌入到自己的应用程序或网站中。为了实现这一点,我们可以使用Google Apps Script将公式转换为回调函数。

首先,我们需要使用Google Apps Script创建一个回调函数。下面是一个示例脚本,用于'SUM”公式转换为回调函数:

function onOpen() {
  SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
      .createMenu('Custom Menu')
      .addItem('Convert Formulas to Callback Functions', 'convertFormulas')
      .addToUi();
}

function convertFormulas() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var range = sheet.getActiveRange();
  var formula = range.getFormula();
  var callbackFunction = createCallbackFunction(formula);
  range.setFormula(callbackFunction);
}

function createCallbackFunction(formula) {
  var callbackFunction = formula;
  callbackFunction = callbackFunction.replace(/=/g, '');
  callbackFunction = callbackFunction.replace(/SUM/g, 'sum');
  callbackFunction = callbackFunction.replace(/,/g, ' + ');
  callbackFunction = 'function sum(' + getParameters(formula) + ') { return ' + callbackFunction + '; }';
  return callbackFunction;
}

function getParameters(formula) {
  var parameters = [];
  formula.match(/ [A-Z]{1,2}[0-9]+/g).forEach(function(reference) {
    reference = reference.trim();
    if (parameters.indexOf(reference) == -1) {
      parameters.push(reference);
    }
  });
  return parameters.join(', ');
}

在这个示例脚本中,我们为Google Sheet添加了一个自定义菜单,并创建了一个名为“convertFormulas”的函数来将选择的单元格中的公式(例如,SUM(A1:A10))转换为回调函数。

要做到这一点,我们首先将回调函数中所有

相关内容

热门资讯

4分钟攻略!越乡游双扣辅助,德... 4分钟攻略!越乡游双扣辅助,德州微扑克辅助(详细透视辅助黑科技教程);玩家必备必赢加哟《136704...
五分钟了解!吉祥麻将填大坑,德... WePoker透视辅助版本稳定性对比与推荐‌:五分钟了解!吉祥麻将填大坑,德扑ai人工智能(详细透视...
三分钟教程!财神十三张有辅助吗... 三分钟教程!财神十三张有辅助吗,fishpoker大菠萝外 挂(详细透视辅助挂教程);(需添加指定薇...
9分钟了解!浩瀚麻将平台有挂吗... WePoke高级策略深度解析‌;9分钟了解!浩瀚麻将平台有挂吗,好运大菠萝有辅助(详细透视辅助神器教...
3分钟透明!手机牌乐门打麻将开... 3分钟透明!手机牌乐门打麻将开得了挂吗,微扑克发牌规律性总结(详细透视辅助挂教程);《WPK辅助透视...
三分钟黑科技!拱趴大菠萝输赢概... 《拱趴大菠萝输赢概率可以调吗软件透明挂》是一款多人竞技的拱趴大菠萝输赢概率可以调吗辅助透视游戏,你将...
五分钟透明!博乐温州棋牌有没有... 这是一款非常优秀的博乐温州棋牌有没有挂 ia辅助检测软件,能够让你了解到博乐温州棋牌有没有挂中牌率当...
六分钟辅助挂!博雅红河棋盘外挂... 1、六分钟辅助挂!博雅红河棋盘外挂,微扑克智能助手(详细透视辅助挂教程);详细教程。2、博雅红河棋盘...
6分钟黑科技!友友邳州麻将辅助... 6分钟黑科技!友友邳州麻将辅助器,微扑克靠谱(详细透视辅助软件教程);实战中需综合运用上述技巧,并根...
4分钟攻略!传送屋有外 挂,德... 4分钟攻略!传送屋有外 挂,德扑之星记分牌有有用(详细透视辅助挂教程);传送屋有外 挂黑科技是一款具...