将数字乘以一定的数字 [英] Multiplying numbers by certain number

查看:81
本文介绍了将数字乘以一定的数字的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将整数乘以1.1765

I`m trying to multiply integer by 1.1765

https://docs.google.com/spreadsheets/d /1jo06fR0KrZXs6p82tjjuGmOVI0JsVFr3jsT_B5Efn6Y/edit?usp = sharing

上面是示例数据

所以我想将预支出列乘以1.1765

So i`m trying to multiply pre-spend column to 1.1765

实际支出为预支出* 1.1765

The Actual Spend will be Pre-spend * 1.1765

我尝试了以下代码

function multiply(){
  var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1')
  var data = sheet.getDataRange().getValues();
  var newspend = sheet.getRange(1,1,data.length,1).getValues()*1.1765;
  var rng = sheet.getRange(2,2,sheet.getLastRow(), 1);
  Logger.log(newspend)
  rng.setValues(newspend)
}

但是我收到一条错误消息,

But I get an error message saying,

找不到方法setValues(number)

Cannot find method setValues(number)

我认为这是因为事物不在数组中..

I think this is because things are not in array..?

我们应该如何解决呢?

推荐答案

您可以使用setFormula插入公式,而不是尝试在这些单元格中插入值.

Rather than try and insert a value in those cells, you can use setFormula to insert a formula.

这个答案可能只是几种可能的方法之一.

This answer is probably only one of several possible approaches.

function applyformula(){
  var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1');
  var lastRow = sheet.getLastRow();
  Logger.log("DEBUG: the last row is "+lastRow);
  var dataRange = sheet.getRange(1,2,lastRow-1,2);
  Logger.log("the data range = "+dataRange.getA1Notation());
  var variable = 1.1765;
  sheet.getRange(2,2,lastRow-1,1).setFormula("=A2*"+variable)
}


屏幕截图


Screenshot

这篇关于将数字乘以一定的数字的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆